WA求调
查看原帖
WA求调
931816
ZYHhangyan2008楼主2024/7/21 19:14

如题

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e5 + 100;
const ll inf = 0x3f3f3f3f3f3f3f3fLL;
ll f[4][N];
ll mapp[4][N];
int n;
int main()
{
	scanf("%d",&n);
	for(int i = 1 ; i <= 3 ; i ++)
	{
		for(int j = 1 ; j <= n ; j ++)
		{
			scanf("%lld",&mapp[i][j]);
		}
	}
	f[1][1] = mapp[1][1],f[2][1]=mapp[1][1]+mapp[2][1],f[3][1]=mapp[1][1]+mapp[2][1]+mapp[3][1];
	ll tp2=mapp[1][1]+mapp[2][1]+mapp[3][1],tp1=-inf;
	for(int i = 2 ; i <= n ; i ++)
	{
		f[1][i]=max({f[1][i-1],f[2][i-1]+mapp[2][i],f[3][i-1]+mapp[3][i]+mapp[2][i]})+mapp[1][i];
		f[2][i]=max({f[1][i-1]+mapp[1][i],f[2][i-1],f[3][i-1]+mapp[3][i]})+mapp[2][i];
		f[3][i]=max({f[1][i-1]+mapp[1][i]+mapp[2][i],f[2][i-1]+mapp[2][i],f[3][i-1]})+mapp[3][i];
		tp2=max(tp2,f[1][i-1])+mapp[1][i]+mapp[2][i]+mapp[3][i];
		tp1=max(tp1,f[3][i-1])+mapp[1][i]+mapp[2][i]+mapp[3][i];
		f[1][i]=max(f[1][i],tp2);
		f[3][i]=max(f[3][i],tp1);
	}
	printf("%lld",f[3][n]);
	return 0;
}


2024/7/21 19:14
加载中...