求教WA
查看原帖
求教WA
238203
跟你沟通楼主2020/11/6 18:18
#include<bits/stdc++.h>
using namespace std;
int f1[203][203],f2[203][203],a[203],sum[203];
int main()
{
	int n;cin>>n;
	for(int i=1;i<=n;++i){cin>>a[i];sum[i]=sum[i-1]+a[i];}
	for(int i=n+1;i<2*n;++i)
	{
		a[i]=a[i-n];
		sum[i]=sum[i-1]+a[i];
	}
	for(int k=1;k<n;++k)
		for(int len=1;len<n;len++)
			for(int i=k;i<=k+n-len-1;i++)
			{
				int j=i+len;
				f1[i][j]=1000000000;
				f2[i][j]=-1;
				int tem=sum[j]-sum[i-1];
				for(int t=i;t<j;t++)
				{
					f1[i][j]=min(f1[i][j],f1[i][t]+f1[t+1][j]+tem);
					f2[i][j]=max(f2[i][j],f2[i][t]+f2[t+1][j]+tem);
				}
			}
	cout<<f1[1][n]<<endl<<f2[1][n];
}
2020/11/6 18:18
加载中...