結果
問題 |
No.472 平均順位
|
ユーザー |
![]() |
提出日時 | 2017-04-11 22:36:47 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 269 ms / 2,000 ms |
コード長 | 678 bytes |
コンパイル時間 | 1,490 ms |
コンパイル使用メモリ | 169,124 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-18 09:07:56 |
合計ジャッジ時間 | 3,421 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 16 |
ソースコード
#include<bits/stdc++.h> #define int long long const int inf=8938103643641919514ll; const int mod=1000000007ll; const int dd[]={0,-1,0,1,0}; using namespace std; int a,b,c,d; int p[5000],q[5000],r[5000],s[2][15001]; signed main(){ int i,j,k; int f=0; cin>>a>>b; for(i=0;i<a;i++) cin>>p[i]>>q[i]>>r[i]; for(i=0;i<a;i++){ for(j=0;j<=b;j++) s[f^1][j]=s[f][j]+p[i]; for(j=1;j<=b;j++) if(s[f^1][j]>=s[f][j-1]+q[i]) s[f^1][j]=s[f][j-1]+q[i]; for(j=2;j<=b;j++) if(s[f^1][j]>=s[f][j-2]+r[i]) s[f^1][j]=s[f][j-2]+r[i]; for(j=3;j<=b;j++) if(s[f^1][j]>=s[f][j-3]+1) s[f^1][j]=s[f][j-3]+1; f^=1; } cout<<setprecision(15)<<(double)s[f][b]/a<<endl; }