結果
問題 |
No.472 平均順位
|
ユーザー |
![]() |
提出日時 | 2020-06-05 01:46:40 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 459 ms / 2,000 ms |
コード長 | 671 bytes |
コンパイル時間 | 1,673 ms |
コンパイル使用メモリ | 159,632 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-12-01 00:05:35 |
合計ジャッジ時間 | 4,107 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 16 |
ソースコード
/** * @FileName a.cpp * @Author kanpurin * @Created 2020.06.05 01:46:34 **/ #include "bits/stdc++.h" using namespace std; typedef long long ll; int main() { int n,p;cin >> n >> p; vector<double> dp(p+1,0); for (int i = 0; i < n; i++) { int a,b,c;cin >> a >> b >> c; for (int j = p; j >= 0; j--) { dp[j] = (dp[j] * i + a) / (i + 1); if (j - 1 >= 0) dp[j] = min(dp[j],(dp[j-1] * i + b) / (i + 1)); if (j - 2 >= 0) dp[j] = min(dp[j],(dp[j-2] * i + c) / (i + 1)); if (j - 3 >= 0) dp[j] = min(dp[j],(dp[j-3] * i + 1) / (i + 1)); } } printf("%.10f",dp[p]); return 0; }