Online Judge【杭电】[2124]Repair the Wall问题描述Repair the Wall[hdu-2124] [3104468706585119] @vjudge问题分析排序之后由大向小取就好 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include<stdio.h> #include<algorithm> using namespace std; int a[620]; int main() { __int64 l,n; while(scanf("%I64d %d",&l,&n)!=EOF) { for(int i=0; i<n; i++) scanf("%I64d",&a[i]); sort(a,a+n); int cnt=0; for(int i=n-1; i>=0; i--) { if(l<=0) break; l-=a[i]; cnt++; } if(l>0) printf("impossible\n"); else printf("%d\n",cnt); } return 0; }