题目传送门
分析
看到有个n,明显出题人想要你用桶排。但是,这道题的数据太水了,用sort直接水过去了……
(n其实是没用的)
Method 1 :sort排序
#include<bits/stdc++.h>
using namespace std;
int a[2000010];
int main()
{
int n,m;
cin>>n>>m;
for(int i=1;i<=m;i++)
cin>>a[i];
sort(a+1,a+m+1);
for(int i=1;i<=m;i++)
cout<<a[i]<<' ';
return 0;
}
Method 2 :桶排序
#include<bits/stdc++.h>
using namespace std;
int a,n,m,b[1000];
int main()
{
cin>>n>>m;
for(int i=0;i<m;i++)
cin>>a,b[a]++; //记录票出现的次数
for(int i=0;i<1000;i++)
while(b[i]--) cout<<i<<" "; //根据票出现的次数输出
return 0;
}
虽然桶排跑得快一点,但是,STL大法好!