Submission #960495

#TimeUsernameProblemLanguageResultExecution timeMemory
960495dubabubaBalloons (CEOI11_bal)C++14
10 / 100
221 ms15184 KiB
#include <bits/stdc++.h> using namespace std; typedef double d64; typedef long long i64; typedef pair<int, int> pii; #define MP make_pair #define ss second #define ff first const int mxn = 1e6 + 10; d64 x[mxn], r[mxn], ans[mxn]; int n; d64 mx(int L, int R) { d64 dx = x[R] - x[L]; return dx * dx / (4.0 * ans[L]); } int main() { cin >> n; for(int i = 1; i <= n; i++) cin >> x[i] >> r[i]; ans[1] = r[1]; vector<int> vec; vec.push_back(1); for(int i = 2; i <= n; i++) { while(vec.size() > 1 && mx(vec.back(), i) <= mx(vec[vec.size() - 1], i)) vec.pop_back(); ans[i] = min(mx(vec.back(), i), r[i]); vec.push_back(i); } cout << fixed << setprecision(3); for(int i = 1; i <= n; i++) cout << ans[i] << '\n'; return 0; }
#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...