結果

問題 No.3634 Made to order
コンテスト
ユーザー p-adic
提出日時 2026-06-21 14:03:47
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
AC  
実行時間 122 ms / 2,000 ms
+ 249µs
コード長 419 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 228 ms
コンパイル使用メモリ 95,972 KB
実行使用メモリ 86,036 KB
最終ジャッジ日時 2026-08-21 20:55:20
合計ジャッジ時間 6,842 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
サブタスク 配点 結果
サブタスク $1$ 20 % AC * 8
サブタスク $2$ 10 % AC * 21
サブタスク $3$ 70 % AC * 26
合計 3 * 100% = 300 点
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

R=range
J=lambda:map(int,input().split())
N,D=J()
p=1<<N
A=[0]*N
B=A[:]
C=A[:]
v=[0]*p
for i in R(N):A[i],B[i],C[i]=J();v[1<<i]=i
S=sum(B)+1
o=[[(0,0)]]+[[]for s in R(p)]
for s in R(1,p):
	t,y=s,[]
	while t:
		d=t&-t;i,t=v[d],t^d
		for b,x in o[s^d]:r=max(0,b-A[i])+B[i];y+=[(r,max(r,x-A[i])+C[i])]
	for b,x in sorted(y):
		if not o[s] or o[s][-1][1]>x:o[s]+=[(b,x)]
print("YNeos"[sum(A)+min(x for b,x in o[p-1])>D::2])
0