int main()
{
pair<string, int> max_duplicated;
int count = 0;
for (string str, prestr; cin >> str; prestr = str)
{
//若当前词和上一个词相同,则count自增1;否则初始化为0
if (str == prestr)
++count;
else
count = 0;
//找出重复次数最多
if (count > max_duplicated.second)
max_duplicated = { prestr,count };
}
//没有重复出现
if (max_duplicated.first.empty())
cout << "no duplicated string" << endl;
else
{
//由于上一个for循环中,当来到一个新词时,将count初始化为0,所以
//重复出现的次数需要 + 1
cout << "the word " << max_duplicated.first << " occurred "
<< max_duplicated.second + 1 << " times" << endl;
}
return 0;
}
--------------------------------------------------------------------------------------------------部分参考于网络_侵删