結果
問題 |
No.472 平均順位
|
ユーザー |
![]() |
提出日時 | 2020-12-16 13:19:42 |
言語 | PyPy3 (7.3.15) |
結果 |
MLE
|
実行時間 | - |
コード長 | 771 bytes |
コンパイル時間 | 139 ms |
コンパイル使用メモリ | 82,280 KB |
実行使用メモリ | 849,176 KB |
最終ジャッジ日時 | 2024-09-20 04:51:50 |
合計ジャッジ時間 | 6,426 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 9 MLE * 1 -- * 6 |
ソースコード
import sys stdin=sys.stdin ip=lambda: int(sp()) fp=lambda: float(sp()) lp=lambda:list(map(int,stdin.readline().split())) sp=lambda:stdin.readline().rstrip() yp=lambda:print('Yes') np=lambda:print('No') n,p=lp() a=[] for _ in range(n): now=lp() now.append(1) a.append(now) inf=float('INF') dp=[[inf for _ in range(3*n+1)]for _ in range(n)] dp[0][0]=a[0][0] dp[0][1]=a[0][1] dp[0][2]=a[0][2] dp[0][3]=a[0][3] for i in range(1,n): for j in range(3*n+1): dp[i][j]=min(dp[i][j],dp[i-1][j]+a[i][0]) if 0<=j-1: dp[i][j]=min(dp[i][j],dp[i-1][j-1]+a[i][1]) if 0<=j-2: dp[i][j]=min(dp[i][j],dp[i-1][j-2]+a[i][2]) if 0<=j-3: dp[i][j]=min(dp[i][j],dp[i-1][j-3]+a[i][3]) print(dp[-1][p]/n)