poj1742(背包问题)
来源:互联网 发布:淘宝如何搜索优选好店 编辑:程序博客网 时间:2024/04/29 19:56
#include<stdio.h>
int dp[100010];
int A[105];//钱币价值
int C[105];//对应钱币的数量
int main(void)
{
int n,m,i,j,ans=0;
while((~scanf("%d%d",&n,&m))&&(n+m)!=0)
{
ans=0;
memset(dp,-1,sizeof(dp));
dp[0]=0;
for(i=0;i<n;i++)
scanf("%d",&A[i]);
for(i=0;i<n;i++)
scanf("%d",&C[i]);
for(i=0;i<n;i++)// i代表使用前i种纸币
{
for(j=0;j<=m;j++) //j代表使用纸币后,可以达到的钱数
{
if(dp[j]>=0) //if(dp[i+1][j]>=0)
dp[j]=C[i]; // dp[i+1][j]=C[i];
else // else
if(j<A[i]||dp[j-A[i]]<=0) // if(j<A[i]||dp[i+1][j-A[i]]<=0)
dp[j]=-1; // dp[i+1][j]=-1;
else //else
dp[j]=dp[j-A[i]]-1; // dp[i+1][j]=dp[i+1][j-A[i]]-1;
} //2维数组简化为一维
}
for(i=0;i<=m;i++)
{
if(dp[i]>=0)
ans++;
}
printf("%d\n",ans-1);
}
}
- poj1742(背包问题)
- 背包问题-poj1742
- 背包问题poj1742
- poj1742- Coins(多重背包)
- poj1742(多重背包dp)
- poj1742 多重背包的可行性问题
- POJ1742 Coins(多重背包可行性)
- POJ1742 Coins(背包)
- POJ1742多重背包
- POJ1742:Coins(多重背包)
- 多重背包变形--poj1742
- poj1742 coin 多重背包
- POJ1742可行性背包
- poj1742(多重背包)
- poj1742(多重背包)
- POJ1742 多重背包
- POJ1742-Coins-多重背包
- POJ1742 Coins 【多重背包】
- 第四天
- 使用OkHttp的那些事儿(三)
- [操作系统概念]第三部分——CPU调度
- 递归习题—角谷猜想(C程序设计进阶 第3周)
- php文件编码引起的bug
- poj1742(背包问题)
- ASCII 字符的三种表示方法
- openstack的四层组网
- web前端开发中常遇到的问题
- 【LeetCode】506. Relative Ranks【E】【50】
- 文章标题
- 文章标题
- [操作系统概念]第四部分——同步
- ABP入门系列(11)——编写单元测试