文章標題

ccf數字排序

#include<stdio.h>
struct Rank
    {
        int v;
        int s;
    }a[1001];
int main()
{


    int n,i,x,j;
    int num=0;
    scanf("%d",&n);
    for(i=0;i<1001;i++)
    {
        a[i].v=i;
        a[i].s=0;
    }
    for(i=0;i<n;i++)
    {
        scanf("%d",&x);
        a[x].s++;
    }
    for(i=0;i<1001;i++)
    {
        for(j=i+1;j<1001;j++)
        {
            if(a[i].s<a[j].s||(a[i].s==a[j].s&&a[i].v>a[j].v))
            {
                struct Rank temp;
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
            if(a[i].s==a[j].s)
            {
                if(a[i].v>a[j].v)
                {
                struct Rank temp1;
                temp1=a[i];
                a[i]=a[j];
                a[j]=temp1; 
                }
            }

        }
    }
    for(i=0;i<n;i++)
    {
        if(a[i].s!=0)
        {
            printf("%d %d\n",a[i].v,a[i].s);
        }

    }
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章