結果
| 問題 | No.3642 OHO SHI KA TSU(Buying ver.) |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-09-19 23:28:30 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
TLE
不安定
|
| 実行時間 | - |
| コード長 | 795 bytes |
| 記録 | |
| コンパイル時間 | 62 ms |
| コンパイル使用メモリ | 82,576 KB |
| 実行使用メモリ | 84,900 KB |
| 最終ジャッジ日時 | 2026-09-19 23:28:41 |
| 合計ジャッジ時間 | 10,230 ms |
|
ジャッジサーバーID (参考情報) |
judge2_1 / judge1_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| 小課題1 | 5 % | AC * 4 |
| 小課題2 | 3 % | AC * 3 |
| 小課題3 | 2 % | AC * 3 |
| 小課題4 | 10 % | AC * 3 |
| 小課題5 | 15 % | AC * 3 |
| 小課題6 | 20 % | AC * 3 |
| 小課題7 | 30 % | AC * 3 |
| 小課題8 | 15 % | AC * 30 TLE * 1 |
| 合計 | 85 点 |
ソースコード
#幸福度-金額*しきい値>0
N,X,Y=map(int,input().split())
A=[tuple(map(int,input().split())) for i in range(N)]
sep=[]
for w,v,c in A:
ns=[]
for j in range(10):
if c>=(1<<j):
ns.append(1<<j)
c-=1<<j
if c:
ns.append(c)
sep.append(tuple(ns))
ok=0.0
ng=1000000000.0
for i in range(100):
mid=(ok+ng)/2
dp=[-100000000000000.0]*X
dp[0]=0.0
idx=0
for w,v,c in A:
for j in sep[idx]:
nw=w*j
nv=v*j
ndp=[-100000000000000.0]*X
for k in range(X):
ndp[k]=max(ndp[k],dp[k])
ndp[(k+nw)%X]=max(ndp[(k+nw)%X],dp[k]+nv+((k+nw)//X)*Y-nw*mid)
dp=ndp
idx+=1
if max(dp)>0:
ok=mid
else:
ng=mid
print(ok)