杭电1248.。 http://acm.hdu.edu.cn/showproblem.php?pid=1248 地址。。
1个回答
展开全部
完全背包
#include<cstdio>
int main()
{
int t,n=3,a[3]={150,200,350};
scanf("%d",&t);
while(t--)
{
int i,j,m,dp[10005]={0};
scanf("%d",&m);
for(i=0;i<n;i++)
for(j=a[i];j<=m;j++)
if(dp[j-a[i]]+a[i]>dp[j])
dp[j]=dp[j-a[i]]+a[i];
printf("%d\n",m-dp[m]);
}
}
#include<cstdio>
int main()
{
int t,n=3,a[3]={150,200,350};
scanf("%d",&t);
while(t--)
{
int i,j,m,dp[10005]={0};
scanf("%d",&m);
for(i=0;i<n;i++)
for(j=a[i];j<=m;j++)
if(dp[j-a[i]]+a[i]>dp[j])
dp[j]=dp[j-a[i]]+a[i];
printf("%d\n",m-dp[m]);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询