結果
問題 | No.1715 Dinner 2 |
ユーザー |
👑 ![]() |
提出日時 | 2021-10-22 22:06:12 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 988 bytes |
コンパイル時間 | 227 ms |
コンパイル使用メモリ | 81,856 KB |
実行使用メモリ | 76,432 KB |
最終ジャッジ日時 | 2024-09-23 05:37:00 |
合計ジャッジ時間 | 4,951 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 35 WA * 3 |
ソースコード
"""同じ2種類のみを繰り返すのが最適?最後の方は、そうとは限らない二分探索か?最低を下回らない範囲内で、一番跳ね返りが大きいのを選ぶのが最適"""import sysfrom sys import stdinimport mathN,D = map(int,stdin.readline().split())PQ = []PG = []for i in range(N):P,Q = map(int,stdin.readline().split())PQ.append((P,Q))PG.append( (P,Q-P) )PG.sort()r = 0l = -10**9while r-l != 1:m = (l+r)//2now = 0last = Noneable = Truefor day in range(D):nind = Nonefor i in range(N):p,g = PG[i]if now - p >= m and i != last and (nind == None or PG[nind][1] < g):nind = iif now - p < m:breakif nind == None:able = Falsebreaklast = nindnow += PG[nind][1]if able:l = melse:r = mprint (l)