9 条题解

  • 1
    @ 2025-11-16 19:35:01
    #include <bits/stdc++.h>
    using namespace std;
    int m,n;
    int v[200],w[200],dp[200];
    int main(){
    	cin >> m >> n;
    	for(int i = 1;i <= n;i++){
    		cin >> v[i] >> w[i];
    	}
    	for(int i = 1;i <= n;i++){
    		for(int j = m;j >= 1;j--){
    			if(j - v[i] >= 0){
    				dp[j] = max(dp[j - v[i]] + w[i],dp[j]);
    			}
    		}
    	}
    	cout << dp[m];
    	return 0;
    }
    

    信息

    ID
    1725
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    递交数
    331
    已通过
    129
    上传者