NYOJ1080线性排序

 

年龄排序

时间限制:2000 ms  |  内存限制:240000 KB
难度:0
 
描述

JXB经常向HJS炫耀他们家乡那里有多么多么好,但是HJS大牛从来对此不屑一顾,某日,他又在那说:“我们那里的人寿命都很高,甚至还有一个150岁的老人呢!”,这次HJS大牛准备调查一下,于是收集了那里每个人的年龄数据,首先得把它们从小到大排序,这个简单的任务就交给你了!

 
输入
第一行一个n,表示n个数(n<=6000000)
第二行有n个数,表示该地区每个人的年龄
数据只有一组
输出
按递增序列输出这些年龄
样例输入
6
2 5 6 9 15 3
样例输出
2 3 5 6 9 15
提示
由题意,所有人的年龄<=150
#include<stdio.h>   
int a[160];  
int main()  
{  
    int n,i,j,k,max;  
    scanf("%d",&n);
        max=0;  
        for(i=0;i<n;++i)  
        {  
            scanf("%d",&k);  
            a[k]++;  
            if(max<k)  
                max=k;  
        }  
        for(i=0;i<=max;++i)  
        {  
            for(j=0;j<a[i];++j)  
            {  
                if(i==max&&j==a[i]-1)  
                    printf("%d\n",i);  
                else      
                    printf("%d ",i);  
            }  
        }  
    return 0;  
}   

  题目下面的提示是在提醒你用线性排序

 

posted @ 2017-09-14 10:01  啃煤球的小西瓜  阅读(164)  评论(0编辑  收藏  举报