『題解』洛谷P5015 標題統計
阿新 • • 發佈:2018-12-22
題意描述
給你一個字串,求所有字元的總數。
字元只包含數字,大小寫字母。
分析
字串的長度還是\(\le5\)的。
直接列舉就可以了。
AC程式碼:
NOIP官方標準程式是這樣的
#include <iostream> #include <cstdlib> #include <string> int main() { freopen("title.in", "r", stdin); freopen("title.out", "w", stdout); std::string s; std::getline(std::cin, s); int cnt = 0; if (s.length() > 0 && s[0] != ' ') ++cnt; if (s.length() > 1 && s[1] != ' ') ++cnt; if (s.length() > 2 && s[2] != ' ') ++cnt; if (s.length() > 3 && s[3] != ' ') ++cnt; if (s.length() > 4 && s[4] != ' ') ++cnt; std::cout << cnt << std::endl; return 0; }
直接列舉\(5\)個位。
還是我的比較可觀:
#include<iostream> #include<algorithm> #include<cstdio> #include<cstring> using namespace std; char s[10]; int main() { gets(s);//讀入字串(不推薦用,再Linux下的換行符和Windows下的不一樣) int ans=0;//清空ans for (int i=0; i<strlen(s); i++) {//別忘了C++字串下標是從0開始的 if (s[i]>='A' &&s[i]<='Z') ans++; if (s[i]>='a' &&s[i]<='z') ans++; if (s[i]>='0' &&s[i]<='9') ans++;//數字 } printf("%d\n",ans);//輸出結果 return 0; }