?
# | Author | Problem | Lang | Verdict | Time | Memory | Sent | Judged | |
---|---|---|---|---|---|---|---|---|---|
81742048 |
Contestant: andryusha_na_knopke |
1359C - 10 | C++17 (GCC 7-32) | Accepted | 233 ms | 660 KB | 2020-05-28 18:07:07 | 2020-05-29 07:52:55 |
#pragma GCC optimize("Ofast,fast-math,unroll-loops,inline,no-stack-protector") #pragma GCC target("sse,sse2,sse3,ssse3,sse4,sse4.1,sse4.2,avx,avx2,abm,mmx,popcnt") #include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <cmath> #include <vector> #include <set> #include <map> #include <unordered_set> #include <unordered_map> #include <queue> #include <ctime> #include <cassert> #include <complex> #include <string> #include <cstring> #include <chrono> #include <random> #include <queue> #include <bitset> using namespace std; #define pb push_back #define int long long signed main() { ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int q; cin >> q; while (q--) { int h, c; long double t; cin >> h >> c >> t; if (2 * t <= h + c) { cout << 2 << '\n'; } else { t -= ((h + c) * 1.0 / 2); long double dif = (h - c); long double t2 = t; t /= dif; t = 1 / t; t -= 2; t /= 4; int r = round(t); pair<long double, long double> kek = {1010101, 10101}; for (int delta = -80; delta <= 80; delta++) { int r2 = r + delta; if (0 <= r2) { kek = min(kek, {abs(t2 - dif / (4 * r2 + 2)), r2}); } } cout << 2 * kek.second + 1 << '\n'; } } }
?
?
?
?