poj 1837 Balance (0 1 背包)
Posted cxchanpin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了poj 1837 Balance (0 1 背包)相关的知识,希望对你有一定的参考价值。
Balance
Time Limit: 1000MS | Memory Limit: 30000K | |
Total Submissions: 10326 | Accepted: 6393 |
题意:给你n个挂钩g个砝码 以及n个挂钩的距离天平中心距离(负的代表左边正的代表右边)g个砝码的重量。
要求输出能够令天平平衡的方法种类
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int main() { int dp[25][15005]; int n,g,c[25],w[25],i,j; while(cin>>n>>g) { for(i=1;i<=n;i++) cin>>c[i]; for(i=1;i<=g;i++) cin>>w[i]; memset(dp,0,sizeof(dp)); dp[0][7500]=1; for(i=1;i<=g;i++) for(j=0;j<=15000;j++) if(dp[i-1][j]) { for(int k=1;k<=n;k++) dp[i][j+c[k]*w[i]]+=dp[i-1][j]; } cout<<dp[g][7500]<<endl; } return 0; }
以上是关于poj 1837 Balance (0 1 背包)的主要内容,如果未能解决你的问题,请参考以下文章