// 01背包
//参考http://blog.csdn.net/lyy289065406/article/details/6648094
//基本就是抄过来了 呵呵 学习学习
#include<iostream>
using namespace std;
int shu[21][15001];
int main()
{
int a,b,i,w[21],z[21],j,k;
cin>>a>>b;
for(i=1;i<=a;i++)
cin>>w[i];
for(i=1;i<=b;i++)
cin>>z[i];
memset(shu,0,sizeof(shu));
shu[0][7500]=1;
for(i=1;i<=b;i++)
for(j=0;j<=15000;j++)
if(shu[i-1][j])
for(k=1;k<=a;k++)
shu[i][j+z[i]*w[k]]+=shu[i-1][j];
cout<<shu[b][7500]<<endl;
return 0;
}
poj 1837 Balance--01背包
最新推荐文章于 2018-05-08 22:04:00 发布