Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
145459 | 朱悦晨 | 储钱罐 | C++ | 解答错误 | 0 | 1 MS | 300 KB | 546 | 2024-05-05 09:02:33 |
#include<bits/stdc++.h> using namespace std; int T,n,e,f,w[10005],v[10005]; int main() { cin>>T; for(int i=1;i<=T;i++){ int dp[10005]; cin>>e>>f; cin>>n; int W = f-e; for(int j=0;j<n;j++){ cin>>v[j]>>w[j]; } dp[0] = 0; for(int j=1;j<=W;j++) dp[j] = 1E9; for(int j=0;j<n;j++){ for(int k=w[i];k<=W;k++){ dp[k] = min(dp[k],dp[k-w[j]]+v[j]); } } if(dp[W] < 1E9) cout<<"The minimum amount of money in the piggy-bank is "<<dp[W]<<".\n"; else cout<<"This is impossible.\n"; } return 0; }