3 条题解

  • 0
    @ 2025-4-19 19:30:39
    #include <bits/stdc++.h>
    using namespace std;
    const int N=1010;
    int f[N][N];
    int w[N],g[N]; 
    int main(){
    	int n,m;
    	cin>>n>>m;
    	for(int i=1;i<=n;i++)
    	{
    		cin>>w[i]>>g[i];
    	}
    	for(int i=1;i<=n;i++)
    	{
    		for(int j=1;j<=m;j++)
    		{
    			f[i][j]=f[i-1][j];
    			if(j>=w[i])f[i][j]=max(f[i][j],g[i]+f[i][j-w[i]]);
    		}
    	}
    	cout<<f[n][m];
    	return 0;
    }
    
    
    

    信息

    ID
    989
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    (无)
    递交数
    44
    已通过
    20
    上传者