B | Age Sort Input: Standard Input Output: Standard Output |
You are given the ages (in years) of allpeople of a country with at least 1 year of age. You know that no individual inthat country lives for 100 or more years. Now, you are given a very simple taskof sorting all the ages in ascending order.
Input
Thereare multiple test cases in the input file. Each case starts with an integer n (0<n<=2000000), the total number of people. In the next line, thereare n integers indicating the ages.Input is terminated with a case where n =0. This case should not be processed.
Output
For each case, print a line with n spaceseparated integers. These integers are the ages of that country sorted inascending order.
Warning: Input Data is pretty big (~ 25 MB) so use faster IO.
SampleInput Outputfor Sample Input
5 3 4 2 1 5 5 2 3 2 3 1 0 | 1 2 3 4 5 1 2 2 3 3 |
Note:The memory limit of this problem is 2 Megabyte Only.
Problem Setter: Mohammad Mahmudur Rahman
Special Thanks: Shahriar Manzoor
排序
#include <cstdio>
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <cstring>
#include <map>
#include <cmath>
#include <string>
#include <queue>
#include <set>
using namespace std;
#ifdef WIN
typedef __int64 LL;
#define iform "%I64d"
#define oform "%I64d\n"
#else
typedef long long LL;
#define iform "%lld"
#define oform "%lld\n"
#endif
const int INF = 0x3f3f3f3f;
const int maxn = 100 + 10;
int readInt() {
int res = 0;
int k = 1;
char c = getchar();
while(!(('0'<=c && c<='9') || (c=='-'))) c = getchar();
if(c == '-') {
k = -1;
c = getchar();
while(!('0'<=c && c<='9')) c = getchar(); //是否允许有空格
}
while('0'<=c && c<='9') {
res = res * 10 + c - '0';
c = getchar();
}
return k>0 ? res : -res;
}
int cnt[maxn];
int main() {
int n;
while(scanf("%d", &n) !=EOF && n) {
memset(cnt, 0, sizeof(cnt));
for(int i=0; i<n; i++) {
int t = readInt();
cnt[t]++;
}
int first = 1;
for(int i=0; i<maxn; i++) if(cnt[i] > 0) {
for(int j=0; j<cnt[i]; j++) {
if(!first) printf(" ");
printf("%d", i);
first = 0;
}
}
printf("\n");
}
return 0;
}