結果
問題 |
No.561 東京と京都
|
ユーザー |
![]() |
提出日時 | 2021-07-07 07:54:38 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,108 bytes |
コンパイル時間 | 94 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 11,520 KB |
最終ジャッジ日時 | 2024-07-01 12:17:40 |
合計ジャッジ時間 | 1,636 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | RE * 4 |
other | RE * 17 |
ソースコード
#!/usr/bin/env python3 from sys import setrecursionlimit, stdin from typing import Iterable INF: int = 2**62 MOD: int = 10**9 + 7 setrecursionlimit(10**6) def inputs(type_=int): ins = input().split(' ') ins = [x for x in ins if x != ''] if isinstance(type_, Iterable): return [t(x) for t, x in zip(type_, ins)] else: return list(map(type_, ins)) def input_(type_=int): a, = inputs(type_) return a inputi = input_ def inputstr(): return input_(str) # b/aの切り上げ def ceil(b, a): return (a + b - 1) // a def answer(res) -> None: print(res) exit() def compute(): return def main(): n, d = inputs() n += 1 xs = [None] * n for i in range(n): xs[i] = inputs() xs = [[0, 0]] + xs dp = [[0, 0] for _ in range(n)] dp[0][0] = 0 dp[0][1] = -INF for i in range(1, n): for s in range(2): dp[i][s] = max(dp[i-1][s] + xs[i][s], dp[i-1][1-s] + xs[i][s] - d) # from pprint import pprint # pprint(dp) print(max(dp[-1])) if __name__ == '__main__': main()