HDU1425-sort

来源:互联网 发布:淘宝店铺 售假 申诉 编辑:程序博客网 时间:2024/06/06 14:02

sort

水题的水解与不水解法对比

顿时无语   水解——----->

                   hash表------->

// File Name: hdu1425.cpp// Author: rudolf// Created Time: 2013年04月22日 星期一 16时53分10秒#include<vector>#include<list>#include<map>#include<set>#include<deque>#include<stack>#include<bitset>#include<algorithm>#include<functional>#include<numeric>#include<utility>#include<sstream>#include<iostream>#include<iomanip>#include<cstdio>#include<cmath>#include<cstdlib>#include<cstring>#include<ctime>#include<cstdio>using namespace std;const int maxn=1000005;int num[maxn];int  cmp(const void *a,const void *b){return *(int *)b-*(int *)a;}int main(){int m,n;while(scanf("%d%d",&m,&n)!=EOF){for(int i=0;i<m;i++)scanf("%d",&num[i]);qsort(num,m,sizeof(num[0]),cmp);for(int i=0;i<n-1;i++){printf("%d ",num[i]);}printf("%d\n",num[n-1]);}return 0;}



// File Name: hdu1425hashbiao.cpp// Author: rudolf// Created Time: 2013年04月22日 星期一 18时13分10秒#include<vector>#include<list>#include<map>#include<set>#include<deque>#include<stack>#include<bitset>#include<algorithm>#include<functional>#include<numeric>#include<utility>#include<sstream>#include<iostream>#include<iomanip>#include<cstdio>#include<cmath>#include<cstdlib>#include<cstring>#include<ctime>using namespace std;const int maxn=1000001;bool hash[maxn];inline bool scan_d(int &num){char in;bool ASD=false;in=getchar();if(in==EOF)return false;while(in!='-'&&(in<'0'||in>'9'))in=getchar();if(in=='-'){ASD=true;num=0;}elsenum=in-'0';while(in=getchar(),in>='0'&&in<='9'){num*=10;num+=in-'0';}if(ASD)num=-num;return true;}int main(){int n,m,i,x,k;while(cin>>n>>m){memset(hash,false,sizeof(hash));for(i=0;i<n;i++){scan_d(x);hash[x+500000]=true;}k=0;for(i=maxn-1;k!=m;i--){if(hash[i]){if(k++)cout<<" ";cout<<i-500000;}}cout<<endl;}return 0;}