Submission #2107523
Source Code Expand
# coding: utf-8 A, B = map(int, input().split(' ')) a = list(map(int, input().split(' '))) b = list(map(int, input().split(' '))) dp = [[0] * (B + 1) for _ in range(A + 1)] for i in range(1, A + 1): # j = 0 sunuke_turn = (A + B - i) % 2 == 0 if sunuke_turn: dp[i][0] = dp[i - 1][0] + a[-i] else: dp[i][0] = dp[i - 1][0] for j in range(1, B + 1): # i = 0 sunuke_turn = (A + B - j) % 2 == 0 if sunuke_turn: dp[0][j] = dp[0][j - 1] + b[-j] else: dp[0][j] = dp[0][j - 1] for i in range(1, A + 1): for j in range(1, B + 1): sunuke_turn = (A + B - i - j) % 2 == 0 if sunuke_turn: dp[i][j] = max(dp[i - 1][j] + a[-i], dp[i][j - 1] + b[-j]) else: dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) print(dp[A][B])
Submission Info
Submission Time | |
---|---|
Task | B - ゲーム |
User | nkmrtty |
Language | Python (3.4.3) |
Score | 3 |
Code Size | 843 Byte |
Status | AC |
Exec Time | 968 ms |
Memory | 26960 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 3 / 3 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 00, 01, 02, 90, 91 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00 | AC | 18 ms | 3064 KB |
01 | AC | 654 ms | 19416 KB |
02 | AC | 968 ms | 26960 KB |
90 | AC | 17 ms | 3064 KB |
91 | AC | 17 ms | 3192 KB |