#include <iostream>
#include <cmath>
using namespace std;
int n, m, r;
int rmb[105] = {0};
int rp[105] = {0};
int tme[105] = {0};
int dpn[105][105] = {0};
int dpt[105][105] = {0};
int main() {
cin >> n;
for (int i = 1; i <= n; ++i) {
cin >> rmb[i] >> rp[i] >> tme[i];
}
cin >> m >> r;
for (int i = 1; i<= n; ++i) {
for (int j = r; j >= rp[i]; --j) { // 当前人品
for (int k = m; k >= rmb[i]; --k) { // k=当前人民币数量
if (dpn[j][k] < dpn[j-rp[i]][k-rmb[i]]+1) {
dpt[j][k] = dpt[j-rp[i]][k-rmb[i]]+tme[i];
dpn[j][k] = dpn[j-rp[i]][k-rmb[i]]+1;
} else if (dpn[j][k] == dpn[j-rp[i]][k-rmb[i]]+1) {
dpt[j][k] = min(dpt[j-rp[i]][k-rmb[i]]+tme[i], dpt[j][k]);
}
}
}
}
cout << dpt[m][r];
}
显示read0,expected 1.可是我和第一篇题解的思路对照了一下,发现没什么错误呀?这到底是怎么回事呢?