Hash的应用2
代码:
#include <stdio.h> #define OFFSET 500000//偏移量 int Hash[1000001];//记录每个数是否出现,出现为1,不出现为0 int main(){ int n,m; while( scanf("%d%d",&n,&m)!= EOF){ for(int i=-500000;i<=500000;i++){ Hash[i+OFFSET]=0; } for(int i=0;i<n;i++){ int x; scanf("%d",&x); Hash[x+OFFSET]=1; } for(int i=500000;i>=-500000;i--){ if(Hash[i+OFFSET]!=0){ printf("%d",i); m--; if(m!=0) printf(" "); else{ printf("\n"); break; } } } } return 0; }