标题统计
题目描述
凯凯刚写了一篇美妙的作文,请问这篇作文的标题中有多少个字符? 注意:标题中可能包含大、小写英文字母、数字字符、空格和换行符。统计标题字 符数时,空格和换行符不计算在内。
输入格式
输入文件只有一行,一个字符串s。
输出格式
输出文件只有一行,包含一个整数,即作文标题的字符数(不含空格和换行符)。
样例输入一
234
样例输出一
3
样例输入二
Ca 45
样例输出二
4
说明/提示
【输入输出样例 1 说明】
标题中共有 3 个字符,这 3 个字符都是数字字符。
【输入输出样例 2 说明】 标题中共有5个字符,包括1个大写英文字母, 1个小写英文字母和2个数字字符, 还有1个空格。由于空格不计入结果中,故标题的有效字符数为4个。
【数据规模与约定】规定∣s∣表示字符串s的长度(即字符串中的字符和空格数)。
对于40%的数据,1≤∣s∣≤5,保证输入为数字字符及行末换行符。
对于80%的数据,1≤∣s∣≤5,输入只可能包含大、小写英文字母、数字字符及行末换行符。
对于100%的数据,1≤∣s∣≤5,输入可能包含大、小写英文字母、数字字符、空格和行末换行符。
解法一
本体思路很寻常,存入string,调用size函数即可。但主要难点在于标题之间的空格以及末尾的换行符。直接使用cin可定不行,读入到一半直接挂了,所以就需要用到getline函数。
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main () 4 { 5 int cnt=0; 6 string s; 7 getline(cin,s); 8 for(int i=0;i<s.size();i++) 9 { 10 if(s[i]!=' ') 11 { 12 cnt++; 13 } 14 } 15 cout<<cnt; 16 return 0; 17 }
有关getline的用法可以去cplusplus瞅瞅~