POJ---1384Piggy-Bank (完全背包+装满问题)

来源:互联网 发布:gson解析复杂的json 编辑:程序博客网 时间:2024/03/29 13:23
#include<iostream>#include<algorithm>#define INF 1e9using namespace std;int v[506], w[506];int dp[10010];int main(){    int N; cin >> N;    int W;    while (N--)    {        int l, r; cin >> l >> r;        W = r - l;        int k; cin >> k;        for (int i = 1; i <= k; i++)            cin >> v[i] >> w[i];        for (int i = 0; i <= W; i++)dp[i] = INF;        dp[0] = 0;        for (int i = 1; i <= k; i++)            for (int j = w[i]; j <= W; j++)                dp[j] = min(dp[j], dp[j - w[i]] + v[i]);        if (dp[W] != INF)cout << "The minimum amount of money in the piggy-bank is " << dp[W] << "." << endl;        else cout << "This is impossible." << endl;    }    system("pause");}