题目描述:
给定数列a点n个元素n∈[1,1000],请用计数排序法,使数列a从小到大排序。
输入格式:
第1行,n;
第2行,数列a的n个元素,空格隔开。
输出格式:
1行,排序后数列a的n个元素,空格隔开。
样例:
样例输入:
5
4 3 5 2 1
样例输出:
1 2 3 4 5
【源代码】:
#include <bits/stdc++.h>
using namespace std;
const int N=1e5+2;
int cnt[N];
int a[N];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
cnt[a[i]]++;
}
for(int i=0;i<=105;i++){
if(cnt[i]!=0){
for(int j=1;j<=cnt[i];j++){
cout<<i<<" ";
}
}
}
return 0;
}