几乎全RE
查看原帖
几乎全RE
672360
Ch35楼主2022/9/4 21:27

我写出的代码几乎全RE,我也找不出到底哪里数组越界了

#include<bits/stdc++.h>
using namespace std;
int h,n,c[101],dp[101][101],cnt,maxx;
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
	    scanf("%d",&c[i]);
        cnt+=c[i];
    }
	for(int i=1;i<=n;i++){
	    for(int j=cnt/2;j>=1;j--){
	        for(int k=n/2;k>=1;k--){
	        if(j>=c[i]&&k>0)dp[j][k]=max(dp[j][k],dp[j-c[i]][k-1]+c[i]);
	        maxx=max(dp[j][k],maxx);
	        if(maxx==cnt/2){
	            cout<<maxx;
	            exit(0);
                }
            }
        }
    }
    cout<<maxx;
	return 0;
}

2022/9/4 21:27
加载中...