Sunday, February 27, 2011

499- What's The Frequency, Kenneth?


#include<iostream>
#include<algorithm>
using namespace std;
struct data{
    char let;
    char freq;
};
bool compare(data c1,data c2);
int main()
{
    struct data dat[125];
    char ch[1000];
    int i,k;
    //freopen("in.txt","r",stdin);
    while(gets(ch))
    {
        for(i=0;i<125;i++)
            dat[i].let=i,dat[i].freq=0;
        for(i=0;ch[i];i++)
            dat[ch[i]].freq++;
        for(i=65;i<=90;i++)
            dat[i-65]=dat[i];
        for(i=97;i<=122;i++)
            dat[i-71]=dat[i];
        sort(dat,dat+52,compare);
        k=dat[51].freq;
        for(i=51;!(k^dat[i].freq);i--)
            printf("%c",dat[i].let);
        printf(" %d\n",k);
    }
    return 0;
}
bool compare(data c1,data c2)
{
    if(c1.freq>c2.freq)
        return false;
    else if(!(c1.freq^c2.freq)&&c1.let<c2.let)
        return false;
    return true;
}

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.