結果
問題 | No.1570 Blocks |
ユーザー | 👑 SPD_9X2 |
提出日時 | 2021-06-27 14:39:31 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 391 ms / 2,000 ms |
コード長 | 932 bytes |
コンパイル時間 | 222 ms |
コンパイル使用メモリ | 82,800 KB |
実行使用メモリ | 90,484 KB |
最終ジャッジ日時 | 2024-06-25 11:42:10 |
合計ジャッジ時間 | 13,531 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 45 |
ソースコード
""" https://yukicoder.me/problems/no/1570 Zabuton まんま? あ、2乗を直さないと """ """ https://atcoder.jp/contests/cf17-final/tasks/cf17_final_d 全て置けるかの判定を考える H+Pで昇順ソート 後ろから見ていって、その時点での座布団がH+P以下なら○ だめならX を付けてPを引く を繰り返し、全て○なら全員置ける(丸の数以上の答えであることが確定する) あとは前から見ていってdp? dp[i][j] = i人目まで見てj人置いた時の最小の枚数 →H+Pでソートするのが正しいなら絶対おkなんだが… """ import sys N = int(input()) SHP = [] for i in range(N): p,h = map(int,input().split()) SHP.append( (h+p,h,p) ) SHP.sort() now = 0 for i in range(N): s,h,p = SHP[i] A,B = p,h if now <= B: now += A else: print ("No") sys.exit() print ("Yes")