Submission #2545736


Source Code Expand

#include <iostream>
#include <vector>
#include <map>
#include <tuple>

using namespace std;

using point = pair<int, int>;
using square = tuple<int, int, int, int>;

int solve(int i, int j, int k, int l, vector<point> &M, map<square, int> &memo) {
	square key(i, j, k, l);
	if (memo[key] > 0) return memo[key];
	int result = 0;

	for (auto m : M) {
		if (m.first < i || k < m.first) continue;
		if (m.second < j || l < m.second) continue;

		int r = k - i + l - j + 1;
		r += solve(i, j, m.first - 1, m.second - 1, M, memo);
		r += solve(i, m.second + 1, m.first - 1, l, M, memo);
		r += solve(m.first + 1, j, k, m.second - 1, M, memo);
		r += solve(m.first + 1, m.second + 1, k, l, M, memo);
		result = max(result, r);
	}

	return memo[key] = result;
}

int main(int argc, char *argv[]) {
	int W, H;
	cin >> W >> H;
	int N;
	cin >> N;
	vector<pair<int, int>> M(N);
	for (int i = 0; i < N; i++) cin >> M[i].first >> M[i].second;

	map<square, int> memo;
	cout << solve(1, 1, W, H, M, memo) << endl;

	return 0;
}

Submission Info

Submission Time
Task D - 金塊ゲーム
User icecocoa6
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1054 Byte
Status AC
Exec Time 26 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 3 ms 384 KB
subtask2_02.txt AC 3 ms 384 KB
subtask2_03.txt AC 6 ms 512 KB
subtask2_04.txt AC 6 ms 512 KB
subtask2_05.txt AC 9 ms 512 KB
subtask2_06.txt AC 12 ms 640 KB
subtask2_07.txt AC 12 ms 640 KB
subtask2_08.txt AC 12 ms 640 KB
subtask2_09.txt AC 24 ms 896 KB
subtask2_10.txt AC 23 ms 896 KB
subtask2_11.txt AC 23 ms 896 KB
subtask2_12.txt AC 24 ms 896 KB
subtask2_13.txt AC 12 ms 640 KB
subtask2_14.txt AC 11 ms 640 KB
subtask2_15.txt AC 2 ms 256 KB
subtask2_16.txt AC 12 ms 640 KB
subtask2_17.txt AC 24 ms 896 KB
subtask2_18.txt AC 25 ms 896 KB
subtask2_19.txt AC 23 ms 896 KB
subtask2_20.txt AC 23 ms 896 KB
subtask2_21.txt AC 24 ms 896 KB
subtask2_22.txt AC 23 ms 896 KB
subtask2_23.txt AC 24 ms 896 KB
subtask2_24.txt AC 24 ms 896 KB
subtask2_25.txt AC 26 ms 896 KB
subtask3_01.txt AC 1 ms 256 KB
subtask3_02.txt AC 3 ms 384 KB
subtask3_03.txt AC 3 ms 384 KB
subtask3_04.txt AC 4 ms 384 KB
subtask3_05.txt AC 8 ms 512 KB
subtask3_06.txt AC 6 ms 512 KB
subtask3_07.txt AC 6 ms 512 KB
subtask3_08.txt AC 12 ms 640 KB
subtask3_09.txt AC 13 ms 640 KB
subtask3_10.txt AC 25 ms 896 KB
subtask3_11.txt AC 22 ms 896 KB
subtask3_12.txt AC 25 ms 896 KB
subtask3_13.txt AC 24 ms 896 KB
subtask3_14.txt AC 24 ms 896 KB
subtask3_15.txt AC 23 ms 896 KB
subtask3_16.txt AC 22 ms 896 KB
subtask3_17.txt AC 24 ms 896 KB
subtask3_18.txt AC 9 ms 512 KB
subtask3_19.txt AC 22 ms 896 KB
subtask3_20.txt AC 12 ms 640 KB
subtask3_21.txt AC 25 ms 896 KB
subtask3_22.txt AC 24 ms 896 KB
subtask3_23.txt AC 23 ms 896 KB
subtask3_24.txt AC 24 ms 896 KB
subtask3_25.txt AC 22 ms 896 KB