HDOJ 2072 单词数
- 题目要求及输入输出要求如下:
- 解题思路如下:
要统计文章或者句子的单词数,我们可以
~~复制、粘贴把它放在word里,看右下角的字数统计,然后......~~
哈哈,这种当然方便,但是呢,我们也是可以通过自己编写代码来解决这一问题的。
下面是解决问题的代码,主要是通过空格和字符结束符来实现对单词数的统计。因为该题有要求是要统计文章中不同的单词数,因此不同重复统计相同的单词,这一点需要我们注意。
- 解题代码如下:
#include<bits/stdc++.h>
using namespace std;
//利用了set的没有重复元素的特点,对应不重复的单词数
int main()
{
string str,str1; //str代表输入,str1代表过渡字符串
set<string> s1; //单词表
while(getline(cin,str)&&str[0]!='#') //输入
{
s1.clear();
for(int i=0;i<str.size();i++)
{
if(str[i]==' ') //读到一个单词的末尾
{
if(str1!="")
s1.insert(str1);
str1="";
}
else //将读取到的字符存入字符串str1中
{
str1+=str[i];
}
}
//存储单词
if(str1!="")
{
s1.insert(str1);
str1="";
}
cout<<s1.size()<<endl;//结果输出
}
return 0;
}
作者:一笑奈何DF
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。