解题思路:
使用stringstream和向量
双重循环保证前者没有重复
参考代码:
#include<bits/stdc++.h> using namespace std; int main(){ string sentence; getline( cin, sentence); stringstream ss(sentence); vector<string> word; //把句子中的单词赋给向量word while(!ss.eof()){ string s; ss >> s; word.push_back(s); } int total = 0; //记录不同单词个数 int i; bool same; //如果和前面的重复则为真 for( i = 0; i < word.size(); i++){ same = false; for( int j = 0; j < i; j++) if( word[j] == word[i]){ //和前面的重复 same = true; break; } if( !same) //如果一直为假,则证明没有重复,total++ total++; } cout << total; //输出 return 0; }
0.0分
0 人评分