定义set记录已出现材料,每次输入材料:
(1)查询该材料是否在set中出现过,若出现过则直接看下一个输入,避免重复计数
(2)若未出现则插入set,且计数+1
#include
using namespace std;
int main()
{
set material_set;
string str;
int sum=0;
while( cin>>str )
{
if( material_set.find( str ) != material_set.end() ) continue;
material_set.insert(str);
sum++;
}
cout<<sum<<endl;
return 0;
}


京公网安备 11010502036488号