結果
問題 | No.1478 Simple Sugoroku |
ユーザー |
![]() |
提出日時 | 2021-03-02 15:56:45 |
言語 | C++17(gcc12) (gcc 12.3.0 + boost 1.87.0) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 771 bytes |
コンパイル時間 | 704 ms |
コンパイル使用メモリ | 61,696 KB |
最終ジャッジ日時 | 2025-01-19 09:21:12 |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.cpp:3:10: fatal error: testlib.h: No such file or directory 3 | #include "testlib.h" | ^~~~~~~~~~~ compilation terminated.
ソースコード
#include <bits/stdc++.h>#include "testlib.h"using namespace std;int n, m;long double res = 1e18;long double cost;long long base;int main() {registerValidation();int n = inf.readInt(1, 1000000000);inf.readSpace();int m = inf.readInt(1, min(n, 100000));inf.readEoln();vector<int> b(m);int bef = 0;for(int i = 0; i < m; i++) {if(i) inf.readSpace();b[i] = inf.readInt(bef + 1, n);bef = b[i];}inf.readEoln();inf.readEof();if(m <= 1) {printf("%d\n", n - 1);return 0;}base += b.front() - 1 + n - b.back();res = b.back() - b.front();for(int i = m - 1; i >= 1; i--) {cost += b.back() - b[i];res = min(res, cost / (m - i) + (long double)m / (m - i));}cout << fixed << setprecision(6);cout << res + base << endl;}