hdu 1004 字符串排序

来源:互联网 发布:快手协议源码 编辑:程序博客网 时间:2024/06/06 09:11

代码比较简单,直接看代码

#include<cstdio>#include<iostream>#include<algorithm>#include<string>#include<cstring>#define MAX 1005using namespace std;string node[MAX];bool cmp(string a,string b){    if(a.length()==b.length())        return a.compare(b)<1;    return a.length()<b.length();}int main(){    int i,num;    while(cin>>num,num!=0)    {        for(i=0;i<num;i++)        {            cin>>node[i];        }        sort(node,node+num,cmp);        int maxnum=0;        int maxtemp=1;        string chartemp=node[0];        for(i=0;i<num-1;i++)        {            if(node[i].compare(node[i+1])==0)            {                maxtemp++;                            }            else            {                maxtemp=1;            }            if(maxtemp>maxnum)            {                maxnum=maxtemp;                chartemp=node[i];            }        }        cout<<chartemp<<endl;    }    return 0; } 

还可以用结构体实现,原理是一样的,就当是熟悉下结构体

#include<cstdio>#include<iostream>#include<algorithm>#include<string>#include<cstring>#define MAX 1005using namespace std;struct Node{    string color;}node[MAX];bool cmp(Node a,Node b){    if(a.color.length()==b.color.length())        return a.color.compare(b.color)<1;    return a.color.length()<b.color.length();}int main(){    int i,num;        while(cin>>num,num!=0)        {            for(i=0;i<num;i++)            {                cin>>node[i].color;            }            sort(node,node+num,cmp);            int maxnum=0;            int maxtemp=1;            string chartemp=node[0].color;            for(i=0;i<num-1;i++)            {                if(node[i].color.compare(node[i+1].color)==0)                {                    maxtemp++;                                    }                else                {                    maxtemp=1;                }                if(maxtemp>maxnum)                {                    maxnum=maxtemp;                    chartemp=node[i].color;                }            }            cout<<chartemp<<endl;        }    return 0; }


原创粉丝点击