(排序的新方法) nyoj1080-年龄排序

mac2022-06-30  96

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

最新回复(0)