結果
問題 | No.2368 I love a square root of 2 |
ユーザー | SSRS |
提出日時 | 2023-06-30 22:26:56 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 54 ms / 2,000 ms |
コード長 | 618 bytes |
コンパイル時間 | 1,593 ms |
コンパイル使用メモリ | 166,160 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-07-07 10:17:50 |
合計ジャッジ時間 | 2,406 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:32:23: warning: 'cb' may be used uninitialized [-Wmaybe-uninitialized] 32 | cout << a << ' ' << b << endl; | ^ main.cpp:13:13: note: 'cb' was declared here 13 | int ca, cb; | ^~ main.cpp:32:16: warning: 'ca' may be used uninitialized [-Wmaybe-uninitialized] 32 | cout << a << ' ' << b << endl; | ^~~ main.cpp:13:9: note: 'ca' was declared here 13 | int ca, cb; | ^~
ソースコード
#include <bits/stdc++.h> using namespace std; const double INF = 1000000; int main(){ long long N; cin >> N; double tv = 0, fv = INF; int a, b; for (int i = 0; i < 100; i++){ double mid = (tv + fv) / 2; double mx = -1; long long cnt = 0; int ca, cb; for (int j = 0; j <= mid; j++){ int f = (mid - j) / sqrt(2); cnt += f + 1; double x = j + f * sqrt(2); if (x > mx){ mx = x; ca = j; cb = f; } } if (cnt <= N){ tv = mid; a = ca; b = cb; } else { fv = mid; } } cout << a << ' ' << b << endl; }