結果
問題 | No.844 split game |
ユーザー |
|
提出日時 | 2021-01-18 17:50:06 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,105 bytes |
コンパイル時間 | 182 ms |
コンパイル使用メモリ | 82,732 KB |
実行使用メモリ | 200,204 KB |
最終ジャッジ日時 | 2024-12-14 08:47:47 |
合計ジャッジ時間 | 98,876 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 27 TLE * 29 |
ソースコード
#region Header#!/usr/bin/env python3# from typing import *import sysimport ioimport mathimport collectionsimport decimalimport itertoolsfrom queue import PriorityQueueimport bisectimport heapqdef input():return sys.stdin.readline()[:-1]sys.setrecursionlimit(1000000)#endregion# _INPUT = """5 2 1# 1 1 2# 2 5 10# """# sys.stdin = io.StringIO(_INPUT)def main():N, M, A = map(int, input().split())points = dict()T1 = [list() for _ in range(N+1)]T2 = [list() for _ in range(N+1)]for _ in range(M):l, r, p = map(int, input().split())l -= 1points[(l, r)] = pT1[l].append(r)T2[r].append(l)dp = [0 for _ in range(N+1)]for i in range(1, N+1):v_max = -10**10for j in range(i):v = dp[j]if (j, i) in points:v += points[(j, i)]if i < N:v -= Av_max = max(v_max, v)dp[i] = v_maxprint(dp[N])if __name__ == '__main__':main()