HDU 1280 前m大的数 基数排序
2014-01-19 19:53
447 查看
http://acm.hdu.edu.cn/showproblem.php?pid=1280
题目大意:
给你N(N<=3000)个数(这些数不超过5000),要求输出他们两两相加后和最大的M(M<=1000)个数。(并且这M个数从大到小排序)
思路:
数的范围有限所以进行基数排序。
输出的时候从大到小扫描凑足M个即可。
题目大意:
给你N(N<=3000)个数(这些数不超过5000),要求输出他们两两相加后和最大的M(M<=1000)个数。(并且这M个数从大到小排序)
思路:
数的范围有限所以进行基数排序。
输出的时候从大到小扫描凑足M个即可。
#include<cstdio> const int MAXN=10000+2; int data[3001]; int main() { int n,m; while(~scanf("%d%d",&n,&m)) { int sum[MAXN]={0}; for(int i=0;i<n;i++) { scanf("%d",&data[i]); sum[ data[i] ]++; } for(int i=0;i<n;i++) for(int j=i+1;j<n;j++) sum[ data[i]+data[j] ]++; int len=0; bool first=true; for(int i=MAXN-1;len<m;i--) { while(sum[i]!=0 && len<m) { sum[i]--; if(first) printf("%d",i); else printf(" %d",i); len++; first=false; } } printf("\n"); } return 0; }
相关文章推荐
- HDU 1280 前m大的数 基数排序
- hdu 1280 前m大的数 (水题)
- hdu 1280 前m大的数
- hdu 1280 前m大的数
- hdu 1280 hash
- hdu 1280 堆排序
- hdu 1280(前m大的数)
- hdu 1280 前m大的数 计数排序
- HDU 1280 堆排
- HDU-1280(哈希表求法)
- hdu1280——hash
- 【HDU-1280】 前m大的数
- HDU 1280 前M大的数 哈希 桶排序
- 前m大的数(HDU_1280) 计数排序
- 哈希表学习小记 Hdu 1280+1425+3785 (前m大数)(简单哈希)
- hdu 1280 前m大的数
- HDU-1280 前m大的数 【sort】
- hdu 1425 sort (基数排序)
- hdu------1280 前m大的数
- hdu 1280 前m大的数 (hash)