Submission #1945963


Source Code Expand

#include <iostream>
using namespace std;

typedef long long ll;

int N;
ll A[4010];
ll dp[4010][4010];

ll rec(int l,int r)
{
	if(l > r) return 0;
	if(l == r) return A[l];

	if(dp[l][r] != -1) return dp[l][r];

	ll res = 0;
	ll eat_l = A[l],eat_r = A[r];

	if(A[l + 1] > A[r]) eat_l += rec(l + 2,r);
	else eat_l += rec(l + 1,r - 1);

	if(A[l] > A[r - 1]) eat_r += rec(l + 1,r - 1);
	else eat_r += rec(l,r - 2);

	res = max(eat_l,eat_r);

	return (dp[l][r] = res);
}


int main()
{
	for(int i = 0;i < 4010;i++)
	{
		for(int j = 0;j < 4010;j++)
		{
			dp[i][j] = -1;
		}
	}

	cin >> N;

	for(int i = 0;i < N;i++)
	{
		cin >> A[i];
		A[i + N] = A[i];
	}
	ll result = -1;
	for(int i = 0;i < N;i++)
	{
		result = max(result,rec(i,i + N - 1));
	}

	cout << result << endl;
	return 0;
}


Submission Info

Submission Time
Task B - ケーキの切り分け2 (Cake 2)
User niuez
Language C++14 (GCC 5.4.1)
Score 100
Code Size 841 Byte
Status AC
Exec Time 87 ms
Memory 125952 KB

Judge Result

Set Name Subtask01 Subtask02 Subtask03
Score / Max Score 15 / 15 45 / 45 40 / 40
Status
AC × 13
AC × 23
AC × 33
Set Name Test Cases
Subtask01 sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt
Subtask02 sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt
Subtask03 sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 03-01.txt, 03-02.txt, 03-03.txt, 03-04.txt, 03-05.txt, 03-06.txt, 03-07.txt, 03-08.txt, 03-09.txt, 03-10.txt
Case Name Status Exec Time Memory
01-01.txt AC 33 ms 125824 KB
01-02.txt AC 33 ms 125824 KB
01-03.txt AC 33 ms 125824 KB
01-04.txt AC 33 ms 125824 KB
01-05.txt AC 33 ms 125824 KB
01-06.txt AC 33 ms 125824 KB
01-07.txt AC 33 ms 125824 KB
01-08.txt AC 33 ms 125824 KB
01-09.txt AC 33 ms 125824 KB
01-10.txt AC 33 ms 125824 KB
02-01.txt AC 33 ms 125824 KB
02-02.txt AC 33 ms 125824 KB
02-03.txt AC 33 ms 125824 KB
02-04.txt AC 34 ms 125824 KB
02-05.txt AC 34 ms 125824 KB
02-06.txt AC 36 ms 125824 KB
02-07.txt AC 34 ms 125824 KB
02-08.txt AC 34 ms 125824 KB
02-09.txt AC 34 ms 125824 KB
02-10.txt AC 34 ms 125824 KB
03-01.txt AC 36 ms 125952 KB
03-02.txt AC 46 ms 125952 KB
03-03.txt AC 86 ms 125952 KB
03-04.txt AC 46 ms 125952 KB
03-05.txt AC 85 ms 125952 KB
03-06.txt AC 87 ms 125952 KB
03-07.txt AC 86 ms 125952 KB
03-08.txt AC 85 ms 125952 KB
03-09.txt AC 86 ms 125952 KB
03-10.txt AC 84 ms 125952 KB
sample-01.txt AC 33 ms 125824 KB
sample-02.txt AC 33 ms 125824 KB
sample-03.txt AC 33 ms 125824 KB