結果
問題 | No.472 平均順位 |
ユーザー |
![]() |
提出日時 | 2018-03-20 08:52:02 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
MLE
|
実行時間 | - |
コード長 | 890 bytes |
コンパイル時間 | 1,559 ms |
コンパイル使用メモリ | 157,960 KB |
実行使用メモリ | 297,536 KB |
最終ジャッジ日時 | 2024-06-23 06:34:53 |
合計ジャッジ時間 | 7,975 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | MLE * 4 |
other | MLE * 16 |
ソースコード
#include <bits/stdc++.h>using namespace std;#define INF 1.1e9#define LINF 1.1e18#define FOR(i,a,b) for (int i=(a);i<(b);++i)#define REP(i,n) FOR(i,0,n)#define ALL(v) (v).begin(),(v).end()#define pb push_back#define pf push_front#define fi first#define se second#define BIT(x,n) bitset<n>(x)#define PI 3.14159265358979323846typedef long long ll;typedef pair<int,int> P;typedef pair<ll,P> PP;//-----------------------------------------------------------------------------int dp[5010][15010];int n,p;int main() {cin.tie(0);ios::sync_with_stdio(false);REP(i,5010) REP(j,15010) dp[i][j]=INF;cin>>n>>p;dp[0][0]=0;FOR(i,0,n) {int a[4];REP(j,3) cin>>a[j];a[3]=1;REP(j,min(p,3*i)+1) {if(dp[i][j]!=INF) {REP(k,4) dp[i+1][j+k]=min(dp[i+1][j+k],dp[i][j]+a[k]);}}}double ans=(double)dp[n][p]/n;printf("%.10f\n",ans);return 0;}