Uva-10130-SuperSale
2013-06-28 23:24
344 查看
这个题在N个人中,每个人需要选择一些物品,要求求出团队整个价值的最大值
思路:对每个人进行背包搜寻最优解,然后就可以得到集体最优解
代码:
思路:对每个人进行背包搜寻最优解,然后就可以得到集体最优解
代码:
#include<cstdio> #include<cstring> #include<iostream> using namespace std; const int maxn=1001; int n,m,ans,c[maxn],w[maxn],f[50]; int Get(int val) { memset(f,0,sizeof(f)); for(int i=0;i<n;i++) for(int j=val;j>=w[i];j--) f[j]=max(f[j],f[j-w[i]]+c[i]); return f[val]; } int main() { int T; scanf("%d",&T); while(T--) { scanf("%d",&n); ans=0; for(int i=0;i<n;i++) scanf("%d%d",&c[i],&w[i]); scanf("%d",&m); for(int i=0;i<m;i++) { int ita; scanf("%d",&ita); ans+=Get(ita); } printf("%d\n",ans); } return 0; }
相关文章推荐
- UVA 10130 SuperSale
- Uva 10130 - SuperSale
- UVA 10130 - SuperSale
- UVa 10130 SuperSale (0-1背包)
- UVA 10130 - SuperSale(0-1背包问题)
- uva 10130 SuperSale
- UVA 10130 SuperSale(dp + 01背包)
- UVa 10130 - SuperSale
- UVa 10130 - SuperSale
- UVa 10130 - SuperSale
- uva 10130 SuperSale
- UVA - 10130 SuperSale
- SuperSale - UVa 10130 01背包
- uva 10130 SuperSale
- UVA 10130 - SuperSale
- UVa 10130 - SuperSale
- UVA 10130 SuperSale
- 【UVA】10130-SuperSale(01背包)
- uva 10130 SuperSale
- UVA.10130 SuperSale (DP 01背包)