Everybody sit down in a circle. Ok. Listen to me carefully.
``Woooooo, you scwewy wabbit!‘‘
Now, could someone tell me how many words I just said?
Input to your program will consist of a series of lines, each line containing multiple words (at least one). A ``word‘‘ is defined as a consecutive sequence of letters (upper and/or lower case).
Your program should output a word count for each line of input. Each word count should be printed on a separate line.
Meep Meep! I tot I taw a putty tat. I did! I did! I did taw a putty tat. Shsssssssssh ... I am hunting wabbits. Heh Heh Heh Heh ...
2 7 10 9
这里的题目有点不太清楚,因为有一种情况我开始也忽视了:
jfle..............ioo89839jji
这里其实是算3个单词,算成一个单词就错了。
还有就是注意处理行间信息
#include <string> #include <iostream> using namespace std; bool mIsAlpha(char a) { return ‘a‘ <= a && a <= ‘z‘ || ‘A‘ <= a && a <= ‘Z‘; } void KindergartenCountingGame() { string s; while (getline(cin, s)) { int c = 0; bool sp = true; for (int i = 0, j = 0; i < s.size(); i++) { if (!mIsAlpha(s[i])) sp = true; else if (sp && mIsAlpha(s[i])) { c++; sp = false; } } cout<<c<<endl; } }
UVa - 494 - Kindergarten Counting Game 题解,布布扣,bubuko.com
UVa - 494 - Kindergarten Counting Game 题解
原文:http://blog.csdn.net/kenden23/article/details/24309689