poj 1837 01背包
来源:互联网 发布:2010江苏高考数学知乎 编辑:程序博客网 时间:2024/06/06 06:31
有个小技巧,因为力矩可能为负数,就把所有的力矩都加上一个值(加上后保证为正数就好),最后输出组成这个数的方案数
#include<stdio.h>#include<string.h>int pos[30],w[30];int dp[21][4000];int main(){int C,G;int i,j,k;scanf("%d%d",&C,&G); for(i=1;i<=C;i++) scanf("%d",&pos[i]);for(i=1;i<=G;i++)scanf("%d",&w[i]); memset(dp,0,sizeof(dp));for(i=1;i<=C;i++)dp[1][1000+w[1]*pos[i]]++;for(i=2;i<=G;i++){for(j=1;j<=C;j++){for(k=1;k<=2000;k++){if(dp[i-1][k])dp[i][k+w[i]*pos[j]]+=dp[i-1][k];}}}printf("%d\n",dp[G][1000]);return 0;}
- poj 1837 01背包
- poj 1837 01背包
- poj 1837 Balance(01背包)
- poj 1837 Balance--01背包
- DP<01 背包> POJ 1837
- POJ 1837 01背包变种
- poj 1837 dp+01背包
- poj 1837 Balance 01背包
- poj 1837 Balance (01背包)
- poj 1837 Balance (01背包)
- POJ 1837 Balance(01背包)
- POJ 1837 Balance (01背包)
- POJ 1837-Balance(01背包)
- POJ-1837-Balance -01背包
- POJ 1837 Balance(01背包)
- POJ 1837 Balance 01背包
- POJ 1837(01背包)
- POJ Balance 1837(01背包)
- poj 3624 01背包
- poj 3628 01背包
- poj 3211 01 背包
- poj 1745 dp
- 多校第一场
- poj 1837 01背包
- poj 1948 二维01背包
- poj 1976 dp
- hdu 1824 2-sat
- hdu 1203 01背包
- hdu 2955 Robberies 01背包
- hdu 3033 分组背包 每组至少选一个
- hdu 1712 分组背包 每组至多取一个背包
- poj 2723 2-sat