哪里有问题啊,急急急

P1048 [NOIP2005 普及组] 采药

@[kakaluo_te](/user/866969) 可以给下详细解释吗?
by u822844 @ 2022-11-22 08:43:36


你的数组一定都要放在外面定义,否则会出现没有初始化为0的情况。
by muyangli @ 2022-11-22 19:27:17


```cpp #include <stdio.h> int dp[200][200] = {0};//动态规划 前i个草药 在最大时间j下的最大价值 int v[200]={0};//价值 int w[200]={0};//耗时 int max(int a, int b); int main() { int t; int m; scanf("%d%d", &t, &m); for (int i = 1; i <= m; i++) { scanf("%d%d", &w[i], &v[i]); } for (int i = 1; i <= m; i++) { for (int j = 1; j <= t; j++) { if (w[i] > j) dp[i][j] = dp[i - 1][j]; else dp[i][j] = max(dp[i - 1][j], dp[i-1][j - w[i]] + v[i]); } } printf("%d",dp[m][t]); return 0; } int max(int a, int b) { return a > b ? a : b; } ```
by muyangli @ 2022-11-22 20:58:20


@[muyangli](/user/720023) 感谢大佬
by telankesi @ 2022-11-23 16:41:36


|