1080-年龄排序
内存限制:234MB 时间限制:2000ms 特判: No通过数:148 提交数:575 难度:0
题目描述:
JXB经常向HJS炫耀他们家乡那里有多么多么好,但是HJS大牛从来对此不屑一顾,某日,他又在那说:“我们那里的人寿命都很高,甚至还有一个150岁的老人呢!”,这次HJS大牛准备调查一下,于是收集了那里每个人的年龄数据,首先得把它们从小到大排序,这个简单的任务就交给你了!
输入描述:
第一行一个n,表示n个数(n<=6000000)
第二行有n个数,表示该地区每个人的年龄
数据只有一组
输出描述:
按递增序列输出这些年龄
样例输入:
复制
6
2 5 6 9 15 3
样例输出:
2 3 5 6 9 15不能用sort()会超时的。用别的方法,就是将从0到150建立数组,a[0],a[1].....a[150],然后输入年龄i,对应的a[i]++;最后根据a[i]的次数,输入年龄几次就行.C++代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int a[
151];
int main(){
int n;
cin>>
n;
memset(a,0,
sizeof(a));
while(n--
){
int i;
scanf("%d",&
i);
a[i]++
;
}
for(
int i =
0; i <=
150; i++
){
for(
int j =
0; j < a[i]; j++
)
printf("%d ",i);
}
printf("\n");
return 0;
}
转载于:https://www.cnblogs.com/Weixu-Liu/p/10526352.html