求助,算法正确但就是在洛谷上过不了
查看原帖
求助,算法正确但就是在洛谷上过不了
274965
NickSuperb楼主2020/10/11 23:38

代码样例(同时也是第一个点的数据)过了,算法应该是对的 交到洛谷上5个点全WA,显示too short on line 1 在洛谷的在线ide上跑也是对的 求大佬查错 代码如下

#include<iostream>
using namespace std;
int n,a[201],sum[201],x[201][201],y[201][201],maxn,minn=999999999;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		a[i+n]=a[i];		
	}
	for(int i=1;i<=n*2;i++){
		sum[i]=sum[i-1]+a[i];
	}
	for(int len=2;len<=n;len++){
		for(int l=1;l<=n*2-len+1;l++){
			int r=l+len-1;
			x[l][r]=999999999; 
			for(int k=l;k<=r-1;k++){
				x[l][r]=min(x[l][r],x[l][k]+x[k+1][r]);
				y[l][r]=max(y[l][r],y[l][k]+y[k+1][r]);
			}
			x[l][r]=x[l][r]+sum[r]-sum[l-1];
			y[l][r]=y[l][r]+sum[r]-sum[l-1];
		}
	}
	for(int i=1;i<=n;i++){
		minn=min(minn,x[i][i+n-1]);
		maxn=max(maxn,y[i][i+n-1]);
	} 
	cout<<minn<<endl<<maxn;
	return 0;
} 
2020/10/11 23:38
加载中...