标签:turn 价值 输入数据 ++ mic clu 自己 set bsp
M - 寒冰王座
Input输入数据的第一行是一个整数T(1<=T<=100),代表测试数据的数量.然后是T行测试数据,每个测试数据只包含一个正整数N(1<=N<=10000),N代表死亡骑士手中钞票的面值.
注意:地精商店只有题中描述的三种道具.
Output对于每组测试数据,请你输出死亡骑士最少要浪费多少钱给地精商人作为小费.
Sample Input
2 900 250
Sample Output
0 50
思路:完全背包,但是此题目的背包重量和价值是一样的
#include <bits/stdc++.h> using namespace std; int main() { int n,dp[10001]; cin>>n; int v[3]={150,200,350}; while(n--) { int m; cin>>m; memset(dp,0,sizeof(dp)); for(int i=0;i<3;i++) { for(int j=v[i];j<=m;j++)//之前j递减错了 理由见背包九讲P7 { dp[j]=max(dp[j],dp[j-v[i]]+v[i]); } } cout << m-dp[m]<< endl; } return 0; }
标签:turn 价值 输入数据 ++ mic clu 自己 set bsp
原文地址:https://www.cnblogs.com/xuxua/p/9275500.html