P2938
我的这道题A了,但是P2938RE
dalao们帮帮我()
发在这里是感觉发在P2938没人看
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = 1e3 + 10, maxm = 2e5 + 10;
long s, d, m, maxx, p[maxn][maxn], dp[maxm];
int main() {
scanf("%ld %ld %ld", &s, &d, &m);
for (int i = 1; i <= s; i++) {
for (int j = 1; j <= d; j++) {
scanf("%ld", &p[i][j]);
}
}
for (int k = 1; k + 1 <= d; k++) {
memset(dp, 0, sizeof(dp));
maxx = dp[0];
for (int i = 1; i <= s; i++) {
for (int j = p[i][k]; j <= m; j++) {
dp[j] = max(dp[j], dp[j - p[i][k]] + (p[i][k + 1] - p[i][k]));
}
}
m += dp[m];
}
printf("%ld\n", m);
return 0;
}