听灌佬多
  • 板块灌水区
  • 楼主coding_jyy
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/12/12 22:16
  • 上次更新2024/12/13 16:04:42
查看原帖
听灌佬多
1393847
coding_jyy楼主2024/12/12 22:16

P1060 40pts求调
code:

#include <bits/stdc++.h>
using namespace std;
int v[30],w[30];
int dp[30005][30];
int main(){
    int n,weight;
    cin >> weight >> n;
    for(int i = 0;i < n;i++){cin >> w[i] >> v[i];v[i] *= w[i];}
    memset(dp,0,sizeof(dp));
    for(int i = 0;i <= weight;i++){
        for(int j = 1;j <= n;j++){
            dp[i][j] = dp[i][j-1];
            if(i > w[j]) dp[i][j] = max(dp[i][j],dp[i-w[j]][j-1] + v[j]);
        }
    }
    cout << dp[weight][n];
    return 0;
}
2024/12/12 22:16
加载中...