Submission #5900941


Source Code Expand

#include "bits/stdc++.h"
using namespace std;
#define mod 1000000007
#define dom 998244353
#define all(c) begin(c),end(c)
#define rep(i,n) repi(i,0,n)
#define repi(i,a,b) for(int i=(a);i<(b);i++)
#define rrep(i,a,b) for(int i=(b)-1;i>=(a);i--)
template <typename T> bool chmax(T &a, const T &b) { if (a < b) { a = b; return true; } return false; }
template <typename T> bool chmin(T &a, const T &b) { if (b < a) { a = b; return true; } return false; }
#define long long long
#define List vector
#define var auto
#define Count size()
#define Length size()
int dd[] = { 0, 1, 0, -1, 0 }; //→↓←↑

using pi = pair<int, int>;
using pa = pair<pi, pi>;
vector<int> X;
vector<int> Y;
map<pa, long> dp;

long calc(int sy, int ty, int sx, int tx)
{
	if (ty <= sy || tx <= sx)return 0;
	if (dp.find(pa(pi(sy, ty), pi(sx, tx))) != dp.end())
	{
		return dp[pa(pi(sy, ty), pi(sx, tx))];
	}

	long ret = 0;
	int N = X.Length;
	rep(i, N)
	{
		if (sy <= Y[i] && Y[i] < ty && sx <= X[i] && X[i] < tx)
		{
			long sum = ty - sy + tx - sx - 1;
			sum += calc(sy, Y[i], sx, X[i]);
			sum += calc(sy, Y[i], X[i] + 1, tx);
			sum += calc(Y[i] + 1, ty, sx, X[i]);
			sum += calc(Y[i] + 1, ty, X[i] + 1, tx);

			ret = max(ret, sum);
		}
	}

	return dp[pa(pi(sy, ty), pi(sx, tx))] = ret;

}
void solve()
{
	int W, H, N;
	cin >> W >> H >> N;
	X = vector<int>(N);
	Y = vector<int>(N);
	rep(i, N)
	{
		cin >> X[i] >> Y[i];
		X[i]--;
		Y[i]--;
	}

	long ans = calc(0, H, 0, W);
	cout << ans << endl;
}

int main()
{
	cin.tie(0);
	ios::sync_with_stdio(false);
	solve();
	return 0;
}

Submission Info

Submission Time
Task D - 金塊ゲーム
User claw88
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1635 Byte
Status AC
Exec Time 23 ms
Memory 896 KB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3
Score / Max Score 0 / 0 80 / 80 19 / 19 1 / 1
Status
AC × 3
AC × 25
AC × 50
AC × 75
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt
Subtask2 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt
Subtask3 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask3_04.txt, subtask3_05.txt, subtask3_06.txt, subtask3_07.txt, subtask3_08.txt, subtask3_09.txt, subtask3_10.txt, subtask3_11.txt, subtask3_12.txt, subtask3_13.txt, subtask3_14.txt, subtask3_15.txt, subtask3_16.txt, subtask3_17.txt, subtask3_18.txt, subtask3_19.txt, subtask3_20.txt, subtask3_21.txt, subtask3_22.txt, subtask3_23.txt, subtask3_24.txt, subtask3_25.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 1 ms 256 KB
subtask1_05.txt AC 1 ms 256 KB
subtask1_06.txt AC 1 ms 256 KB
subtask1_07.txt AC 1 ms 256 KB
subtask1_08.txt AC 1 ms 256 KB
subtask1_09.txt AC 1 ms 256 KB
subtask1_10.txt AC 1 ms 256 KB
subtask1_11.txt AC 1 ms 256 KB
subtask1_12.txt AC 1 ms 256 KB
subtask1_13.txt AC 1 ms 256 KB
subtask1_14.txt AC 1 ms 256 KB
subtask1_15.txt AC 1 ms 256 KB
subtask1_16.txt AC 1 ms 256 KB
subtask1_17.txt AC 1 ms 256 KB
subtask1_18.txt AC 1 ms 256 KB
subtask1_19.txt AC 1 ms 256 KB
subtask1_20.txt AC 1 ms 256 KB
subtask1_21.txt AC 1 ms 256 KB
subtask1_22.txt AC 1 ms 256 KB
subtask1_23.txt AC 1 ms 256 KB
subtask1_24.txt AC 1 ms 256 KB
subtask1_25.txt AC 1 ms 256 KB
subtask2_01.txt AC 2 ms 384 KB
subtask2_02.txt AC 2 ms 384 KB
subtask2_03.txt AC 5 ms 384 KB
subtask2_04.txt AC 5 ms 512 KB
subtask2_05.txt AC 8 ms 512 KB
subtask2_06.txt AC 10 ms 640 KB
subtask2_07.txt AC 10 ms 640 KB
subtask2_08.txt AC 10 ms 640 KB
subtask2_09.txt AC 19 ms 896 KB
subtask2_10.txt AC 19 ms 896 KB
subtask2_11.txt AC 18 ms 768 KB
subtask2_12.txt AC 20 ms 896 KB
subtask2_13.txt AC 11 ms 640 KB
subtask2_14.txt AC 10 ms 640 KB
subtask2_15.txt AC 2 ms 256 KB
subtask2_16.txt AC 10 ms 640 KB
subtask2_17.txt AC 19 ms 768 KB
subtask2_18.txt AC 20 ms 896 KB
subtask2_19.txt AC 19 ms 896 KB
subtask2_20.txt AC 19 ms 896 KB
subtask2_21.txt AC 19 ms 896 KB
subtask2_22.txt AC 19 ms 896 KB
subtask2_23.txt AC 20 ms 896 KB
subtask2_24.txt AC 21 ms 896 KB
subtask2_25.txt AC 21 ms 896 KB
subtask3_01.txt AC 1 ms 256 KB
subtask3_02.txt AC 3 ms 384 KB
subtask3_03.txt AC 2 ms 384 KB
subtask3_04.txt AC 4 ms 384 KB
subtask3_05.txt AC 7 ms 512 KB
subtask3_06.txt AC 5 ms 512 KB
subtask3_07.txt AC 5 ms 512 KB
subtask3_08.txt AC 10 ms 640 KB
subtask3_09.txt AC 12 ms 640 KB
subtask3_10.txt AC 21 ms 896 KB
subtask3_11.txt AC 20 ms 896 KB
subtask3_12.txt AC 23 ms 896 KB
subtask3_13.txt AC 23 ms 896 KB
subtask3_14.txt AC 20 ms 896 KB
subtask3_15.txt AC 21 ms 896 KB
subtask3_16.txt AC 19 ms 896 KB
subtask3_17.txt AC 22 ms 896 KB
subtask3_18.txt AC 8 ms 512 KB
subtask3_19.txt AC 20 ms 896 KB
subtask3_20.txt AC 10 ms 640 KB
subtask3_21.txt AC 22 ms 896 KB
subtask3_22.txt AC 23 ms 896 KB
subtask3_23.txt AC 21 ms 896 KB
subtask3_24.txt AC 21 ms 896 KB
subtask3_25.txt AC 20 ms 896 KB