C++の練習を兼ねて, AtCoder Regular Contest 025 の 問題A (A – ゴールドラッシュ) ~ 問題B (B – チョコレート) を解いてみた.
■感想.
1. 問題A は, 苦手なdpの訓練を積めたので, 非常に良かったと思う.
2. 問題B は, 二次元累積和の復習が出来たので良かったと思う.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.
本家のサイトARC 025 解説をご覧下さい.
■C++版プログラム(問題A/AC版).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#include <bits/stdc++.h> using namespace std; #define repex(i, a, b, c) for(int i = a; i < b; i += c) #define repx(i, a, b) repex(i, a, b, 1) #define rep(i, n) repx(i, 0, n) #define repr(i, a, b) for(int i = a; i >= b; i--) int D[10], J[10], dp[10][2]; int main(){ // 1. 入力情報. rep(i, 7) scanf("%d", &D[i]); rep(i, 7) scanf("%d", &J[i]); // 2. 最適に鉱山を選んだ場合に得られる金の量は? dp[0][0] = D[0]; dp[0][1] = J[0]; rep(i, 7){ dp[i + 1][0] = max(dp[i][0], dp[i][1]) + D[i + 1]; dp[i + 1][1] = max(dp[i][0], dp[i][1]) + J[i + 1]; } // 3. 出力. printf("%d\n", max(dp[7][0], dp[7][1])); return 0; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
[入力例] 4 2 0 5 6 2 5 6 1 4 3 6 4 6 [出力例] 33 ※AtCoderのテストケースより [入力例] 1 2 3 4 5 6 7 2 3 4 5 6 7 8 [出力例] 35 ※AtCoderのテストケースより [入力例] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [出力例] 0 ※AtCoderのテストケースより [入力例] 8 3 0 2 5 25 252 252 252 2 5 2 5 2 [出力例] 793 ※AtCoderのテストケースより [入力例] 224 1964 1954 1506 547 894 1437 812 1474 1392 783 1375 1115 509 [出力例] 10163 [入力例] 1353 553 146 452 660 733 1384 1627 1450 324 1152 848 823 227 [出力例] 7608 |
■C++版プログラム(問題B/AC版).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
#include <bits/stdc++.h> using namespace std; #define repex(i, a, b, c) for(int i = a; i < b; i += c) #define repx(i, a, b) repex(i, a, b, 1) #define rep(i, n) repx(i, 0, n) #define repr(i, a, b) for(int i = a; i >= b; i--) int wC[111][111], bC[111][111]; // white, black. int wCum[111][111], bCum[111][111]; // white, black. int main(){ // 1. 入力情報. int H, W; scanf("%d %d", &H, &W); rep(i, H){ rep(j, W){ if((i + j) & 1) scanf("%d", &wC[i][j]); else scanf("%d", &bC[i][j]); } } // 2. ブラック, ホワイトチョコレートについて, 二次元累積和を保存. repx(i, 1, H + 1){ repx(j, 1, W + 1){ bCum[i][j] = bC[i - 1][j - 1] + bCum[i - 1][j] + bCum[i][j - 1] - bCum[i - 1][j - 1]; wCum[i][j] = wC[i - 1][j - 1] + wCum[i - 1][j] + wCum[i][j - 1] - wCum[i - 1][j - 1]; } } // 3. 条件を満たす切り出し方を調査. int ans = 0; repx(h, 1, H + 1){ repx(w, 1, W + 1){ // 3-1. マスの数が小さい場合は, Skip. if(h * w <= ans) continue; // 3-2. 縦h, 横w の 切り出し方 を 調査. // 左上隅 を (sx, sy) と 置く. rep(sx, H - h + 1){ rep(sy, W - w + 1){ // 右下隅 は, (sx + h - 1, sy + w - 1) int gx = sx + h - 1; int gy = sy + w - 1; // ブラック, ホワイトチョコレートの濃度合計. int bSum = bCum[gx + 1][gy + 1] - bCum[sx][gy + 1] - bCum[gx + 1][sy] + bCum[sx][sy]; int wSum = wCum[gx + 1][gy + 1] - wCum[sx][gy + 1] - wCum[gx + 1][sy] + wCum[sx][sy]; // 等しければ, 次の処理へ. if(bSum == wSum){ ans = h * w; // 最大値更新. break; } } } } } // 4. 出力. printf("%d\n", ans); return 0; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
[入力例] 3 4 4 6 2 5 3 5 6 7 2 5 5 6 [出力例] 6 ※AtCoderのテストケースより [入力例] 2 2 4 0 7 3 [出力例] 4 ※AtCoderのテストケースより [入力例] 2 3 0 0 0 1 2 3 [出力例] 3 ※AtCoderのテストケースより [入力例] 3 3 1 2 3 6 5 4 7 8 9 [出力例] 0 ※AtCoderのテストケースより [入力例] 1 5 0 1 2 3 4 [出力例] 1 ※AtCoderのテストケースより [入力例] 20 30 79 26 49 19 88 87 44 69 61 31 17 25 28 32 34 34 30 74 19 97 66 35 32 54 75 97 48 64 51 40 91 82 28 6 54 56 1 88 4 11 68 32 89 51 61 77 22 84 91 91 38 79 86 83 92 27 76 80 63 52 25 66 85 50 55 56 58 96 71 2 65 67 58 57 81 18 56 99 44 73 42 66 91 36 77 43 47 95 26 68 94 13 0 85 14 37 36 34 58 86 1 44 49 28 15 26 24 44 39 98 78 27 30 93 68 78 49 95 26 26 21 31 92 95 23 21 8 55 41 86 25 62 26 27 25 85 1 11 4 73 42 26 56 32 32 66 99 60 68 8 54 51 1 6 86 24 20 1 0 0 97 72 46 67 98 56 61 94 45 67 6 60 1 48 97 38 87 69 90 99 55 37 44 84 33 26 70 86 63 78 20 42 87 6 69 35 20 34 77 12 32 24 28 74 29 42 98 88 30 90 70 57 29 52 58 20 9 51 14 45 27 35 51 91 98 90 69 10 35 45 99 0 38 25 89 2 32 29 72 79 30 40 7 96 97 86 61 48 37 69 24 24 71 42 47 60 28 89 77 26 88 35 47 49 84 20 62 98 65 17 58 93 63 54 57 96 75 46 3 8 94 20 96 78 98 56 3 73 27 91 48 55 44 71 10 53 95 83 49 28 36 67 56 11 30 94 15 14 36 6 63 39 47 2 93 48 27 28 82 83 98 5 29 79 8 42 51 76 95 97 89 75 9 23 37 25 35 33 50 85 41 53 28 95 36 16 99 12 98 58 21 62 71 66 93 7 55 85 50 45 6 9 40 8 7 19 32 56 78 79 26 79 75 88 33 35 55 70 13 59 15 98 96 25 44 46 15 91 25 40 8 75 80 4 1 33 83 76 48 13 24 7 92 29 19 99 62 2 68 83 27 25 93 79 47 13 9 19 73 81 49 46 7 39 77 13 9 8 39 41 69 30 96 76 36 86 3 94 39 76 87 34 46 5 54 43 50 74 89 87 36 76 48 54 18 43 89 79 59 2 91 79 1 57 21 35 65 54 96 9 72 75 39 19 93 23 55 79 20 22 55 37 5 73 87 1 36 85 91 47 4 86 74 56 62 90 40 97 43 93 10 70 55 72 19 26 46 72 59 31 0 82 39 78 91 99 67 47 23 92 70 74 45 48 92 24 41 98 28 67 30 2 43 49 88 66 88 18 13 29 44 44 16 48 93 84 40 26 32 82 19 92 39 46 93 28 11 88 18 78 97 38 18 98 24 46 58 94 70 92 60 4 73 79 33 43 14 99 65 7 41 48 53 86 72 91 95 83 1 58 45 15 33 92 25 67 77 24 32 92 [出力例] 266 [入力例] 50 75 81 23 73 83 35 30 8 53 0 84 1 5 48 52 26 12 78 87 79 35 84 29 82 80 23 68 6 61 13 79 66 44 6 25 80 44 54 36 55 81 84 64 78 64 91 85 19 75 87 3 93 93 91 41 86 84 39 34 27 77 39 61 79 80 43 34 84 14 22 30 68 47 22 84 0 93 92 11 88 80 98 31 49 10 87 41 25 80 60 97 1 18 65 9 2 52 45 26 9 54 14 16 84 73 12 66 61 30 9 94 40 87 39 95 59 12 24 34 59 36 64 21 27 33 35 2 35 84 22 31 80 88 61 66 40 40 50 54 4 82 18 77 88 68 73 96 54 21 73 47 54 24 5 42 98 34 25 20 85 21 2 86 91 87 70 24 21 9 55 80 74 63 65 89 78 44 75 41 18 6 49 89 0 64 25 9 62 71 79 14 67 87 40 47 6 16 99 32 20 23 46 19 26 7 1 40 26 66 31 79 70 64 36 52 56 90 28 44 94 5 84 15 10 16 34 31 43 96 15 90 5 76 25 38 76 90 47 20 31 52 45 31 64 60 38 41 79 0 96 99 7 17 97 40 46 73 92 72 85 52 28 63 14 66 24 12 35 96 14 68 20 29 2 61 98 68 31 2 1 99 89 88 9 8 39 68 15 40 12 20 58 45 48 8 55 50 22 2 15 22 23 9 44 79 27 54 37 62 47 77 52 49 92 20 51 55 69 54 12 91 1 54 98 98 88 61 16 88 38 60 92 28 96 67 15 67 26 64 48 20 72 32 18 66 34 68 90 80 28 64 50 76 36 72 85 47 39 50 36 27 66 77 28 67 94 55 20 4 36 85 60 69 38 50 82 68 48 44 72 39 81 27 88 29 71 47 29 89 21 84 44 37 53 16 68 5 83 13 22 25 82 32 73 52 67 55 50 57 91 40 27 18 45 75 50 96 26 78 69 96 2 64 44 43 56 76 13 73 76 21 61 72 88 31 84 90 55 53 57 30 42 56 90 73 21 88 47 64 53 52 47 21 3 75 52 72 7 65 63 94 80 40 63 53 4 9 67 76 45 68 44 10 38 79 31 0 81 89 30 19 27 14 46 53 40 68 10 34 83 29 22 50 53 50 0 95 90 50 25 77 33 79 66 77 60 40 82 97 86 70 65 88 60 36 10 5 49 85 87 14 20 87 23 36 64 98 1 96 11 32 25 71 22 76 86 74 66 10 29 49 49 9 52 28 42 12 66 28 45 24 1 61 40 37 98 20 41 42 97 86 17 61 57 69 54 59 73 54 0 80 45 20 32 16 71 43 19 31 8 41 14 75 16 94 21 95 54 18 20 76 65 47 10 29 17 47 18 53 57 62 59 24 42 54 46 65 68 83 36 64 38 68 57 7 18 23 81 2 64 11 85 8 86 25 18 85 91 44 24 70 99 62 70 59 34 88 61 95 90 79 26 7 41 31 55 57 21 9 45 57 5 68 75 10 23 19 46 21 96 34 22 11 48 63 81 16 26 27 14 62 94 8 35 38 13 97 23 37 24 83 79 24 15 32 7 17 92 91 37 39 27 73 94 50 21 86 60 55 16 0 52 41 36 25 83 47 51 10 32 23 7 74 29 42 15 2 46 45 8 60 40 19 79 90 26 12 24 58 2 23 29 54 3 43 29 29 25 68 4 67 29 21 0 28 77 93 47 2 49 6 48 51 87 83 3 58 25 79 31 28 91 11 39 37 75 4 58 53 62 32 37 30 80 35 57 48 84 94 26 32 94 3 95 7 77 79 19 80 47 94 76 65 60 71 46 68 43 51 91 83 45 70 80 23 24 32 33 2 5 73 61 20 44 38 81 20 8 38 77 37 86 42 68 53 32 82 25 27 63 35 21 46 44 64 40 95 64 2 11 10 70 28 84 13 63 43 47 29 26 52 94 93 38 30 93 59 31 2 47 6 30 71 62 12 61 4 97 41 33 3 88 81 71 31 50 99 46 6 19 32 14 95 59 62 17 82 52 48 42 67 99 65 53 65 54 22 8 72 97 35 74 49 2 80 47 85 64 21 57 78 30 61 16 74 76 18 24 34 99 70 73 77 22 68 14 61 29 76 3 83 74 62 10 65 39 50 62 7 94 93 43 30 23 96 21 52 99 98 74 39 99 89 91 51 8 87 31 12 37 12 54 63 75 68 72 47 2 75 8 64 19 45 95 7 26 10 41 41 73 29 48 67 6 10 59 88 69 57 67 43 6 54 29 20 22 23 3 42 25 3 33 46 38 99 7 22 27 94 74 45 5 27 2 75 19 32 98 48 8 49 19 71 88 63 54 6 44 67 3 16 35 73 31 23 5 74 1 59 70 83 26 69 82 65 59 33 92 26 47 79 79 1 83 28 48 22 29 80 14 94 92 79 18 82 54 41 7 40 17 81 61 56 77 1 62 47 80 77 60 64 68 0 14 7 3 45 41 70 56 64 87 40 48 46 0 95 42 77 20 96 75 45 63 14 91 86 44 67 97 29 56 35 82 51 18 88 38 79 12 12 47 98 66 93 23 72 33 90 56 30 39 42 9 44 80 9 60 67 48 70 53 19 48 86 10 60 52 66 75 68 34 76 33 82 29 17 35 14 14 10 76 85 43 13 74 11 69 85 44 45 4 28 42 27 3 8 13 60 20 82 55 21 37 26 93 47 40 66 66 0 91 33 17 20 44 59 88 62 37 46 92 46 0 28 15 53 65 51 19 90 5 40 39 71 79 51 31 46 67 86 15 16 90 41 88 7 45 71 27 45 38 50 12 12 82 48 82 75 56 99 99 78 51 79 72 27 67 2 82 70 0 84 36 84 16 40 6 36 16 7 32 23 37 96 95 15 87 70 19 62 30 40 92 97 84 52 13 82 14 15 47 33 23 67 12 39 38 65 33 22 55 2 7 51 1 77 28 2 56 66 18 42 41 67 73 29 12 70 28 15 33 16 73 82 45 64 8 28 65 57 82 6 57 44 97 28 94 44 28 56 19 50 94 13 55 15 44 42 92 12 26 94 80 58 90 50 27 78 65 35 19 74 60 20 15 75 0 11 91 89 8 52 43 89 40 72 55 29 92 79 72 41 85 94 13 37 22 49 51 85 69 56 13 55 28 78 86 70 63 38 95 68 23 26 39 66 9 49 41 38 34 51 19 39 10 46 45 62 10 93 44 6 58 10 62 33 58 53 85 7 44 46 82 36 47 85 51 11 37 91 62 32 93 13 25 17 46 32 5 81 74 91 32 45 33 6 11 39 51 17 68 3 12 48 9 97 27 98 18 98 86 56 75 4 16 95 16 99 0 69 87 31 2 27 66 87 60 77 13 5 4 85 4 21 4 90 25 2 27 19 35 54 51 24 88 61 1 6 27 54 17 45 81 21 71 78 76 38 59 43 31 50 79 94 86 82 24 88 95 56 40 35 0 3 24 61 75 48 46 14 31 76 25 64 62 56 55 33 34 56 83 57 46 58 40 58 17 53 91 64 89 50 25 93 60 17 38 39 20 97 5 24 48 6 60 85 53 13 16 71 21 39 11 50 87 56 19 6 60 66 71 80 16 84 1 48 1 78 2 38 85 52 43 36 95 69 42 28 6 59 49 15 6 80 89 27 49 94 86 45 52 95 6 98 73 70 53 59 48 0 93 29 73 36 22 53 96 4 76 45 47 96 11 48 46 54 29 55 43 44 26 19 93 38 91 67 78 88 22 88 64 74 53 13 20 18 65 62 81 92 7 28 59 4 96 27 6 41 57 85 52 76 53 11 23 75 29 70 33 30 26 34 79 43 67 15 43 54 47 68 25 28 26 8 26 24 53 19 85 68 42 73 24 30 89 88 35 61 81 22 93 25 3 36 72 31 47 15 74 83 10 62 52 15 57 85 33 58 67 42 14 98 1 23 78 92 98 54 53 90 97 78 15 32 26 92 54 67 2 19 94 51 0 6 81 18 30 31 96 38 50 34 51 16 86 99 39 9 94 49 11 41 87 67 90 48 5 61 85 29 98 0 76 64 55 14 89 75 2 32 98 28 46 27 27 40 75 78 20 81 90 30 3 77 22 3 87 49 63 27 16 89 40 14 53 93 62 19 8 58 37 21 74 28 75 33 98 56 46 77 29 39 37 15 48 15 91 82 89 21 99 65 54 22 57 3 92 34 78 38 44 82 52 77 64 58 84 86 54 88 92 40 86 96 13 81 61 54 17 13 23 51 31 26 12 53 72 97 25 68 58 93 67 63 88 72 10 74 13 38 0 56 30 7 65 82 57 32 60 23 24 43 49 45 99 73 3 55 13 35 15 44 51 4 8 28 57 33 98 16 64 96 69 84 86 85 76 54 9 8 31 7 91 80 84 60 26 41 38 82 36 52 74 66 37 55 48 59 6 10 76 60 42 92 29 48 21 25 9 93 37 27 26 69 31 28 22 45 76 87 70 78 21 34 7 86 84 97 51 68 0 70 70 22 54 51 88 84 32 38 91 82 51 22 44 97 56 6 83 11 12 19 28 91 1 7 8 76 57 11 90 78 42 31 44 81 70 50 59 58 93 50 86 89 38 90 69 9 66 78 95 99 43 68 3 51 44 59 31 86 45 91 73 13 1 93 18 47 97 11 58 81 90 20 81 23 20 62 70 24 30 49 47 34 44 29 78 32 40 75 32 76 64 35 13 32 58 75 34 60 81 21 86 64 12 95 26 67 70 73 8 16 74 38 21 42 68 55 59 91 52 87 44 24 62 81 15 29 87 99 49 7 81 30 4 64 6 61 25 92 20 33 48 50 22 33 83 18 50 94 48 38 69 50 82 24 43 32 45 11 61 93 63 50 90 61 9 77 57 4 22 75 4 14 91 94 80 14 98 72 53 65 63 26 34 73 35 70 1 69 8 85 15 16 17 17 61 49 51 85 77 9 71 66 70 70 75 26 20 16 16 35 68 12 35 63 43 33 22 40 19 67 92 74 47 7 77 9 24 36 9 63 28 46 2 75 25 20 26 97 66 64 4 65 82 94 14 25 17 38 31 50 27 92 14 77 66 3 59 85 39 45 99 54 13 56 95 46 55 60 87 42 92 3 44 27 49 91 86 16 10 67 46 29 23 20 50 85 37 16 32 27 87 83 33 53 32 44 69 87 87 62 0 96 23 28 93 51 10 39 6 96 73 26 97 5 75 31 35 27 25 93 21 71 76 68 36 71 48 29 57 11 86 43 0 82 17 86 22 52 20 57 30 39 51 14 62 53 40 60 16 21 7 35 16 8 1 37 99 37 59 54 86 23 5 87 26 83 47 77 0 45 73 87 65 27 52 7 4 67 5 25 86 61 59 22 31 57 46 0 61 8 11 76 27 80 25 15 64 92 59 90 63 61 70 61 29 41 42 81 39 68 42 31 21 32 63 8 38 51 71 62 76 49 10 48 11 17 86 14 12 21 50 8 90 3 16 3 60 61 59 96 52 81 85 42 55 65 60 94 85 97 66 80 15 22 87 1 68 63 32 82 49 69 44 31 50 13 59 4 37 2 41 51 58 40 13 7 26 6 36 47 74 35 22 80 42 63 55 35 99 77 11 39 29 6 64 99 56 91 78 66 92 61 35 16 91 47 42 91 45 82 12 18 15 42 18 60 14 19 95 41 5 92 63 53 74 76 0 48 41 74 67 47 64 17 29 52 49 14 65 73 13 56 46 23 90 15 9 40 6 86 72 2 14 46 42 19 17 40 66 63 75 2 24 22 8 36 22 89 0 39 48 87 79 1 26 61 88 49 70 98 19 44 17 49 71 24 79 64 4 88 76 54 55 47 68 25 58 52 81 46 3 68 87 76 46 16 49 18 2 99 73 19 30 30 75 90 82 55 71 18 13 70 26 54 12 60 82 28 21 42 52 76 76 74 73 58 59 89 52 97 53 60 42 17 10 76 49 40 50 89 85 77 80 87 12 57 66 5 58 66 39 13 99 71 81 24 74 57 39 8 35 75 64 24 88 30 83 38 48 17 5 1 70 3 73 35 80 18 51 8 92 6 3 82 50 45 8 24 84 18 9 33 61 38 92 9 85 56 40 75 23 38 21 28 74 7 21 91 23 17 31 6 51 21 27 28 26 52 38 63 83 55 46 47 5 68 59 57 15 46 84 93 40 50 33 27 49 31 80 89 76 72 80 77 26 11 88 2 96 70 33 58 5 57 0 46 37 85 87 62 95 77 87 7 40 54 31 44 73 57 77 97 45 94 36 19 65 42 16 17 8 24 9 56 72 72 10 18 58 89 35 17 19 99 57 42 55 33 96 53 22 55 85 9 64 43 21 72 76 33 35 52 88 44 78 78 50 40 58 72 0 80 34 45 55 66 64 45 39 64 68 98 29 78 31 31 74 9 69 4 2 65 83 62 55 54 51 97 5 63 73 75 1 66 40 34 51 39 40 28 40 57 72 88 65 88 87 11 2 92 23 57 46 26 39 81 61 26 77 70 3 75 31 29 52 44 63 75 32 92 91 25 11 33 90 57 11 2 81 46 76 21 53 52 83 6 2 65 94 7 7 90 78 47 61 92 0 8 56 7 4 97 62 68 73 44 84 71 24 75 39 79 99 75 69 74 10 86 78 49 25 39 56 58 84 61 62 53 96 85 12 37 17 21 66 43 6 19 59 57 16 80 77 74 39 74 54 75 44 29 25 52 8 95 71 18 7 44 34 36 53 33 22 18 66 13 29 32 10 38 33 24 78 30 59 74 74 53 78 45 60 83 81 46 0 53 17 44 41 59 90 93 59 89 54 89 40 18 90 22 2 61 63 25 78 52 27 95 32 20 64 16 4 89 23 95 57 23 11 2 34 56 61 27 37 65 99 58 41 75 5 56 85 85 74 73 50 53 34 3 67 51 5 66 38 31 57 14 60 89 81 12 20 63 56 69 14 14 90 1 52 61 67 9 10 71 29 40 59 95 43 28 71 28 85 21 30 12 15 40 79 76 53 65 35 29 5 56 3 19 50 27 96 48 14 31 79 46 76 91 85 54 84 25 1 78 54 33 57 40 2 14 93 4 7 38 29 4 50 95 97 70 7 33 52 77 17 13 4 41 29 64 94 44 39 89 44 18 12 28 46 63 56 93 80 87 79 57 95 53 31 86 96 93 86 83 8 43 54 57 2 13 20 72 1 8 84 37 3 59 19 38 98 16 74 16 61 95 18 15 18 96 99 39 64 48 27 66 16 8 16 31 71 41 89 79 6 62 9 86 58 22 63 45 88 66 27 51 47 46 83 14 92 33 4 2 59 60 54 9 21 62 50 87 65 70 83 70 28 63 25 89 43 72 5 21 15 89 84 73 85 25 97 22 87 28 1 98 42 18 38 38 23 51 81 99 90 74 23 76 24 80 65 21 93 82 71 96 89 36 53 34 88 98 55 68 4 88 69 47 64 16 86 60 73 18 40 11 18 23 50 25 2 38 82 27 3 47 17 89 71 59 16 54 9 18 3 52 0 36 47 8 93 63 67 58 26 1 91 41 58 37 11 5 96 8 97 24 26 74 28 90 82 95 51 52 11 70 26 40 54 12 36 2 31 60 75 46 1 37 53 55 88 16 61 61 65 46 96 35 90 83 72 22 46 3 57 43 30 8 53 13 57 21 66 27 53 22 80 8 22 91 99 67 67 87 95 39 80 51 18 31 47 36 65 3 94 58 18 34 29 24 91 49 90 54 49 65 16 55 11 14 46 10 56 24 24 59 95 22 42 65 77 0 1 90 73 67 36 57 12 0 36 11 22 69 94 31 88 73 44 15 8 80 93 33 52 18 64 79 66 89 83 17 77 92 21 56 62 21 76 28 26 85 68 63 34 38 22 39 94 92 82 22 39 91 16 36 31 52 13 25 24 26 59 65 92 16 4 35 50 39 1 18 37 62 97 14 49 57 65 12 78 14 19 28 46 51 18 70 2 0 11 23 20 28 58 30 55 75 17 68 55 16 40 76 70 7 78 77 26 95 14 39 10 51 16 55 5 47 46 66 37 99 18 90 6 28 36 60 98 11 59 92 62 90 91 54 43 27 63 8 5 1 55 54 58 68 89 61 41 97 28 26 69 9 59 10 7 34 15 31 93 1 13 73 18 98 98 57 77 6 25 4 11 39 59 45 97 88 63 61 12 59 73 48 47 39 81 86 88 70 84 93 82 36 25 54 80 58 8 43 37 81 11 26 59 32 11 68 56 68 45 31 86 29 26 29 12 96 38 65 94 17 59 92 98 79 46 93 63 65 85 94 57 62 97 77 15 52 60 3 65 57 21 11 63 25 46 75 29 31 62 58 26 40 28 33 75 82 6 80 41 51 84 87 2 55 44 81 9 11 69 7 79 65 33 30 50 83 56 58 49 3 48 62 12 87 91 91 38 17 75 7 32 28 77 24 65 77 72 81 29 12 83 93 92 91 67 60 40 93 35 23 96 65 47 79 [出力例] 1960 |
■参照サイト
AtCoder Regular Contest 025