NYOJ-106 背包问题(贪心)

来源:互联网 发布:淘宝网金丝绒小傲女士 编辑:程序博客网 时间:2024/05/21 08:46

把单位价值从大到小贪心

#include<iostream>#include<algorithm>using namespace std;struct node{int v;int w;};int cmp_v(struct node x, struct node y){return x.v>y.v;}int main(){int T,s,m;int sum_w,sum_v;node a[11];cin>>T;while(T--){sum_w=0,sum_v=0;cin>>s>>m;for(int i=0;i<s;i++){cin>>a[i].v>>a[i].w;}sort(a,a+s,cmp_v);for(int i=0;i<s;i++){if(sum_w+a[i].w<=m){sum_v+=a[i].v*a[i].w;sum_w+=a[i].w;}else{sum_v+=(m-sum_w)*a[i].v;break;}}cout<<sum_v<<endl;} return 0;} 


0 0
原创粉丝点击