Submission #1299791

#TimeUsernameProblemLanguageResultExecution timeMemory
1299791polishprogrammerBalloons (CEOI11_bal)C++20
100 / 100
271 ms4400 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define lld long double #define fi first #define se second #define pb push_back lld promien(pair<lld, lld> okr, pair<lld, lld> nowy) { lld xs = okr.fi, rs = okr.se, x = nowy.fi, r = nowy.se; return min((x-xs)*(x-xs)/(4*rs), r); } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; lld r, x; cin >> n; vector<pair<lld, lld>> okr; for (int i = 0; i < n; i++) { cin >> x >> r; while (!okr.empty() and promien(okr.back(), {x, r}) >= okr.back().se) { r = min(r, promien(okr.back(), {x, r})); okr.pop_back(); } if (!okr.empty()) r = min(r, promien(okr.back(), {x, r})); cout << fixed << setprecision(3) << r << endl; okr.pb({x, r}); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...