結果
問題 | No.68 よくある棒を切る問題 (2) |
ユーザー | 184 |
提出日時 | 2014-11-16 23:57:08 |
言語 | C++11 (gcc 11.4.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 589 bytes |
コンパイル時間 | 544 ms |
コンパイル使用メモリ | 62,192 KB |
実行使用メモリ | 17,984 KB |
最終ジャッジ日時 | 2024-06-10 08:35:41 |
合計ジャッジ時間 | 13,498 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | TLE | - |
testcase_01 | -- | - |
testcase_02 | -- | - |
testcase_03 | -- | - |
testcase_04 | -- | - |
testcase_05 | -- | - |
testcase_06 | -- | - |
testcase_07 | -- | - |
testcase_08 | -- | - |
testcase_09 | -- | - |
ソースコード
#include <iostream> #include <algorithm> #include <cstdio> #include <cstring> #include <string> #include <vector> #define rep(x,to) for(int (x)=0;(x)<(to);(x)++) using namespace std; typedef long long ll; int main() { int n, q; cin >> n; vector<int> l(n); rep(i,n) cin >> l[i]; cin >> q; vector<int> k(q); rep(i,q) cin >> k[i]; rep(j,q){ double hi=1e9+1, lw=0; rep(xx,120){ double md= (hi + lw) /2.0; ll w=0; rep(zz,n){ w += l[zz] / md; } if(w >=k[j]) lw=md; else hi=md; } printf("%.12f\n",lw); } return 0; }