hzyyyyyy


私信TA

用户名:18222895524

访问量:561

签 名:

等  级
排  名 2578
经  验 2243
参赛次数 0
文章发表 13
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:


想知道为什么错误??

参考代码:

正确的

#include<iostream>
#include<string>
#include<algorithm>
#include<vector>
#include<stack>
#include<set>
#include<map>

using namespace std;

int main()
{
    int n;
    string s;
    map<string,int> mp;
    map<string,int>::iterator it,maxit;
    while(cin>>n&&n)
    {
        for(int i=0; i<n; i++)
        {
            cin>>s;
            it=mp.find(s);
            if(it!=mp.end())
                it->second++;
            else
                mp[s]=1;
        }
        maxit=it=mp.begin();
        for(it=mp.begin(); it!=mp.end(); it++)
            if(it->second > maxit->second)
            {
                maxit=it;
            }
        cout<<maxit->first<<endl;
        mp.clear();
    }
    return 0;
}
错误的

#include<iostream>
#include<string>
#include<algorithm>
#include<vector>
#include<stack>
#include<set>
#include<map>
using namespace std;
map<string,int>::iterator it;
map<string,int>::iterator M;
int main()
{
    map<string,int>dict;
    int m;

    while(cin>>m && m!=0)
    {

        for(int i=0; i<m; i++)
        {
            string s;
            cin>>s;
            it=dict.find(s);
            if(it->second)
                it->second++;
            else
                dict[s]=1;
        }

        M=dict.begin();
        for(it=dict.begin(); it!=dict.end(); it++)
        {
            if(it->second > M->second)
                M=it;

        }
        cout<<M->first<<endl;
        dict.clear();
    }
    return 0;

}


 

0.0分

0 人评分

  评论区

  • «
  • »