結果
問題 |
No.3282 Photos and Friends
|
ユーザー |
![]() |
提出日時 | 2025-09-30 04:11:58 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 358 ms / 2,000 ms |
コード長 | 995 bytes |
コンパイル時間 | 4,628 ms |
コンパイル使用メモリ | 81,788 KB |
実行使用メモリ | 118,360 KB |
最終ジャッジ日時 | 2025-09-30 04:12:20 |
合計ジャッジ時間 | 21,634 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 50 |
ソースコード
import sys input = sys.stdin.readline N,P,Q=map(int,input().split()) X=[list(map(int,input().split())) for i in range(N)] ANS=[[0,0] for i in range(N)] SA=[0]*N for i in range(N): x,a,b=X[i] if x<=a: ANS[i][0]=x ANS[i][1]=0 SA[i]=min(x,b) else: if a+b<x: print("No") exit() ANS[i][0]=a ANS[i][1]=x-a SA[i]=min(a,b-(x-a)) SUMA=0 SUMB=0 for i in range(N): SUMA+=ANS[i][0] SUMB+=ANS[i][1] if SUMB>Q: print("No") exit() if SUMA<=P: print("Yes") for i in range(N): print(*ANS[i]) exit() sa=SUMA-P if sa>sum(SA): print("No") exit() for i in range(N): if SA[i]>0: MIN=min(sa,SA[i]) ANS[i][0]-=MIN ANS[i][1]+=MIN sa-=MIN SUMA=0 SUMB=0 for i in range(N): SUMA+=ANS[i][0] SUMB+=ANS[i][1] if SUMA<=P and SUMB<=Q: print("Yes") for i in range(N): print(*ANS[i]) else: print("No")