結果
| 問題 | No.67 よくある棒を切る問題 (1) |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-02-15 02:26:34 |
| 言語 | C++11(廃止可能性あり) (gcc 15.2.0 + boost 1.89.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 622 bytes |
| 記録 | |
| コンパイル時間 | 443 ms |
| コンパイル使用メモリ | 66,676 KB |
| 実行使用メモリ | 13,344 KB |
| 最終ジャッジ日時 | 2025-03-03 10:15:15 |
| 合計ジャッジ時間 | 9,817 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 TLE * 1 -- * 13 |
コンパイルメッセージ
In file included from /usr/include/stdio.h:980,
from /usr/include/c++/13/cstdio:42,
from /usr/include/c++/13/ext/string_conversions.h:45,
from /usr/include/c++/13/bits/basic_string.h:4109,
from /usr/include/c++/13/string:54,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/ios:44,
from /usr/include/c++/13/ostream:40,
from /usr/include/c++/13/iostream:41,
from main.cpp:1:
In function ‘int printf(const char*, ...)’,
inlined from ‘int main()’ at main.cpp:41:8:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:86:23: warning: ‘mid’ may be used uninitialized [-Wmaybe-uninitialized]
86 | return __printf_chk (__USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ());
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
main.cpp: In function ‘int main()’:
main.cpp:24:16: note: ‘mid’ was declared here
24 | double mid;
| ^~~
ソースコード
#include <iostream>
#include <cstdio>
#include <vector>
#include <algorithm>
#include <utility>
const double EPS = 1e-9;
using namespace std;
int main() {
int n;
long long k;
cin >> n;
vector<double> l(n, 0);
for (int i = 0; i < n; i++) {
cin >> l[i];
}
cin >> k;
double upper = 1e9;
double lower = 0;
double mid;
long long count;
while (upper - lower > EPS && upper > lower * (EPS * 1)) {
mid = (upper + lower) / 2;
count = 0;
for (int i = 0; i < n; i++) {
count += l[i] / mid;
}
if (count >= k) {
lower = mid;
} else {
upper = mid;
}
}
printf("%.10f\n", mid);
return 0;
}