不太理解的一件事
查看原帖
不太理解的一件事
1126733
lxc129楼主2024/6/3 21:42

为什么同样的代码,题目中n<=300n<=300,我数组开的300300时10pts10pts,开10001000时100pts100pts 附代码:

#include<bits/stdc++.h>
using namespace std;
long long n,a[301],f[301][301],sum[301];
int main(){
	cin>>n;
	for (int i=1;i<=n;i++){
		cin>>a[i];
		sum[i]=sum[i-1]+a[i];
	}
	for (int i=n;i>=1;i--){
		f[i][i]=0;
		for (int j=i+1;j<=n;j++){
			long long v=f[i][i]+f[i+1][j]+sum[j]-sum[i-1];
			for (int k=i;k<j;k++) v=min(f[i][k]+f[k+1][i]+sum[j]-sum[i-1],v);
			f[i][j]=v;
		}
	}
	cout<<f[1][n];
}

上面是10pts10pts代码,我把301301改成10011001就ACAC了,why?why?

2024/6/3 21:42
加载中...