您的位置:首页 > 其它

UVA11462年龄排序

2014-12-30 17:15 232 查看
题意:

给你200w个人的年龄,年龄的范围是1-100,然后让你从小到大排序输出所有人的年龄,题目还特意强调输入文件限制25MB,题目内存限制2MB.

思路:

比较经典又简单的一个题目了,很早以前就见过了,我们可以开一个数组num[101]的,每来一个年龄a我们就num[a]++,最后输出num[1]个1,num[2]个2...就行了。





#include<stdio.h>

#include<string.h>

int num[105];

int main ()

{

int n ,i ,a;

while(~scanf("%d" ,&n) && n)

{

memset(num ,0 ,sizeof(num));

for(i = 1 ;i <= n ;i ++)

{

scanf("%d" ,&a);

num[a] ++;

}

int mk = 0;

for(i = 1 ;i <= 100 ;i ++)

{

while(num[i]--)

{

if(!mk) printf("%d" ,i);

else printf(" %d" ,i);

mk = 1;

}

}

printf("\n");

}

return 0;

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: