用map和set的特性做的一道题。
//map
#include<string>
#include<sstream>
#include<map>
#include<iostream>
using namespace std;
map<string,int>a;
string s;
int main()
{
string s1,s2;
while(getline(cin,s1)&&s1!="#")
{
stringstream s2(s1);
while(s2>>s)
a[s]=100;
cout<<a.size()<<endl;
a.clear();
}
return 0;
}
// set
#include <iostream>
#include <set>
#include <string>
#include <sstream>// 不要忘记了
using namespace std;
int main() {
string art;
while(getline(cin,art) && art != "#"){
istringstream stream(art);
string word;
set<string> map;
while(stream >>word){
map.insert(word);
}
cout <<map.size() <<endl;
}
return 0;
}
本文通过两个示例展示了如何使用C++中的map和set数据结构来处理文本输入,统计并输出每行中不同单词的数量。具体实现包括读取标准输入、分割字符串以及利用这些数据结构的特点进行高效统计。
1147

被折叠的 条评论
为什么被折叠?



