题意:给你几根绳子,每根最大承重能力都不同,从中选出几根,问最大承重力量是多少?(比如有1,10,15承重的3跟绳子,如果用一根的话,选15的,能承重15,用2根的话,用10和15的,能承重10*2=20,3根的话显然只能是1*3=3了,承重最大的当然是20),大大的水题啊……
#include<algorithm> #include<iostream> using namespace std; int main() { int n; cin>>n; while(n--) { int m,a[1005],i,b,k,max=0; cin>>m; k=m; for(i=0;i<m;i++) cin>>a[i]; sort(a,a+m); for(i=0,k=m;i<m;i++,k--) { b=a[i]*k; if(max<b) max=b; } cout<<max<<endl; } return 0; }
POJ 2291水题
最新推荐文章于 2017-04-01 19:46:45 发布