Submission #1303947
Source Code Expand
import java.util.*; public class Main { int N; private int[] x; private int[] y; private HashMap<String, Integer> hashMap; public void solve() { Scanner scanner = new Scanner(System.in); int W = scanner.nextInt(); int H = scanner.nextInt(); N = scanner.nextInt(); x = new int[N]; y = new int[N]; for (int i = 0; i < N; i++) { x[i] = scanner.nextInt() - 1; y[i] = scanner.nextInt() - 1; } scanner.close(); hashMap = new HashMap<String, Integer>(); int max = dfs(0, 0, W - 1, H - 1); System.out.println(max); } private int dfs(int w1, int h1, int w2, int h2) { if (w1 > w2 || h1 > h2) { return 0; } String key = hash(w1, h1, w2, h2); if (hashMap.containsKey(key)) { return hashMap.get(key); } int max = 0; for (int i = 0; i < N; i++) { if (x[i] < w1 || w2 < x[i] || y[i] < h1 || h2 < y[i]) { continue; } int earn = (w2 - w1) + (h2 - h1) + 1; earn += dfs(w1, h1, x[i] - 1, y[i] - 1);// 左上 earn += dfs(x[i] + 1, h1, w2, y[i] - 1);// 右上 earn += dfs(w1, y[i] + 1, x[i] - 1, h2);// 左下 earn += dfs(x[i] + 1, y[i] + 1, w2, h2);// 右下 max = Math.max(max, earn); } hashMap.put(key, max); return max; } private String hash(int w1, int h1, int w2, int h2) { return w1 + "_" + h1 + "_" + w2 + "_" + h2; } public static void main(String[] args){ new Main().solve(); } }
Submission Info
Submission Time | |
---|---|
Task | D - 金塊ゲーム |
User | suesue |
Language | Java8 (OpenJDK 1.8.0) |
Score | 100 |
Code Size | 1477 Byte |
Status | AC |
Exec Time | 225 ms |
Memory | 51256 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | Subtask3 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 80 / 80 | 19 / 19 | 1 / 1 | ||||||||
Status |
|
|
|
|
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 | 95 ms | 20560 KB |
sample_02.txt | AC | 94 ms | 21716 KB |
sample_03.txt | AC | 107 ms | 20688 KB |
subtask1_01.txt | AC | 97 ms | 23252 KB |
subtask1_02.txt | AC | 96 ms | 19156 KB |
subtask1_03.txt | AC | 108 ms | 18644 KB |
subtask1_04.txt | AC | 106 ms | 20820 KB |
subtask1_05.txt | AC | 96 ms | 21460 KB |
subtask1_06.txt | AC | 96 ms | 21076 KB |
subtask1_07.txt | AC | 104 ms | 19924 KB |
subtask1_08.txt | AC | 93 ms | 18644 KB |
subtask1_09.txt | AC | 107 ms | 20564 KB |
subtask1_10.txt | AC | 93 ms | 19924 KB |
subtask1_11.txt | AC | 97 ms | 21844 KB |
subtask1_12.txt | AC | 96 ms | 19668 KB |
subtask1_13.txt | AC | 100 ms | 19796 KB |
subtask1_14.txt | AC | 107 ms | 21844 KB |
subtask1_15.txt | AC | 101 ms | 20180 KB |
subtask1_16.txt | AC | 103 ms | 21460 KB |
subtask1_17.txt | AC | 99 ms | 21972 KB |
subtask1_18.txt | AC | 110 ms | 21844 KB |
subtask1_19.txt | AC | 100 ms | 21332 KB |
subtask1_20.txt | AC | 109 ms | 20692 KB |
subtask1_21.txt | AC | 99 ms | 21716 KB |
subtask1_22.txt | AC | 109 ms | 19796 KB |
subtask1_23.txt | AC | 108 ms | 21076 KB |
subtask1_24.txt | AC | 109 ms | 19924 KB |
subtask1_25.txt | AC | 112 ms | 17236 KB |
subtask2_01.txt | AC | 120 ms | 24148 KB |
subtask2_02.txt | AC | 114 ms | 21076 KB |
subtask2_03.txt | AC | 130 ms | 24532 KB |
subtask2_04.txt | AC | 120 ms | 24788 KB |
subtask2_05.txt | AC | 134 ms | 28372 KB |
subtask2_06.txt | AC | 143 ms | 31572 KB |
subtask2_07.txt | AC | 141 ms | 30932 KB |
subtask2_08.txt | AC | 146 ms | 29268 KB |
subtask2_09.txt | AC | 181 ms | 35792 KB |
subtask2_10.txt | AC | 180 ms | 36684 KB |
subtask2_11.txt | AC | 174 ms | 37712 KB |
subtask2_12.txt | AC | 189 ms | 39632 KB |
subtask2_13.txt | AC | 153 ms | 30164 KB |
subtask2_14.txt | AC | 142 ms | 31444 KB |
subtask2_15.txt | AC | 116 ms | 20820 KB |
subtask2_16.txt | AC | 142 ms | 31828 KB |
subtask2_17.txt | AC | 179 ms | 37840 KB |
subtask2_18.txt | AC | 184 ms | 37840 KB |
subtask2_19.txt | AC | 179 ms | 37840 KB |
subtask2_20.txt | AC | 183 ms | 37840 KB |
subtask2_21.txt | AC | 180 ms | 35664 KB |
subtask2_22.txt | AC | 183 ms | 34768 KB |
subtask2_23.txt | AC | 178 ms | 37840 KB |
subtask2_24.txt | AC | 180 ms | 37200 KB |
subtask2_25.txt | AC | 177 ms | 40272 KB |
subtask3_01.txt | AC | 98 ms | 21716 KB |
subtask3_02.txt | AC | 129 ms | 23508 KB |
subtask3_03.txt | AC | 128 ms | 24148 KB |
subtask3_04.txt | AC | 128 ms | 23380 KB |
subtask3_05.txt | AC | 151 ms | 30036 KB |
subtask3_06.txt | AC | 141 ms | 23948 KB |
subtask3_07.txt | AC | 137 ms | 26964 KB |
subtask3_08.txt | AC | 159 ms | 32468 KB |
subtask3_09.txt | AC | 174 ms | 39888 KB |
subtask3_10.txt | AC | 220 ms | 48464 KB |
subtask3_11.txt | AC | 204 ms | 48180 KB |
subtask3_12.txt | AC | 217 ms | 48592 KB |
subtask3_13.txt | AC | 225 ms | 48056 KB |
subtask3_14.txt | AC | 206 ms | 47952 KB |
subtask3_15.txt | AC | 206 ms | 47312 KB |
subtask3_16.txt | AC | 197 ms | 45392 KB |
subtask3_17.txt | AC | 222 ms | 46648 KB |
subtask3_18.txt | AC | 154 ms | 30140 KB |
subtask3_19.txt | AC | 213 ms | 48464 KB |
subtask3_20.txt | AC | 154 ms | 34004 KB |
subtask3_21.txt | AC | 177 ms | 36888 KB |
subtask3_22.txt | AC | 222 ms | 48824 KB |
subtask3_23.txt | AC | 220 ms | 48692 KB |
subtask3_24.txt | AC | 223 ms | 51256 KB |
subtask3_25.txt | AC | 210 ms | 48336 KB |