1 条题解
-
0
#include<bits/stdc++.h> using namespace std; const int maxn=1e4; int a[maxn]; int cnt[maxn]; int find_max(int a[],int n){ int max_num=-1; for(int i=1;i<=n;i++){ if(a[i]>max_num) max_num=a[i]; } return max_num; } void counting_sort(int a[],int n){ int max_n=find_max(a,n); for(int i=1;i<=n;i++){ cnt[a[i]]++; } int k=1; for(int i=0;i<=max_n;i++){ for(int j=1;j<=cnt[i];j++){ a[k++]=i; } } } int main(){ int n; cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } counting_sort(a,n); for(int i=1;i<=n;i++){ cout<<a[i]<<" "; } return 0; }
信息
- ID
- 2156
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 66
- 已通过
- 47
- 上传者