Submission #1281200

#TimeUsernameProblemLanguageResultExecution timeMemory
1281200minhphanBalloons (CEOI11_bal)C++20
30 / 100
173 ms4392 KiB
#include <bits/stdc++.h> using namespace std; double calcRadius(const pair<int, double> &a, const double bx) { const double dx = bx-a.first; return dx*dx/(4*a.second); } int main() { int n; cin >> n; stack<pair<int, double>> stack; vector<double> finalRadius(n); for (int i = 0; i<n; i++) { double x, r; cin >> x >> r; double maxR = r; while (!stack.empty()) { pair<int, double> last = stack.top(); double radius = calcRadius(last, x); maxR = min(maxR, radius); if (radius >= last.second) { stack.pop(); continue; } break; } stack.emplace(x, maxR); finalRadius[i] = maxR; } cout << fixed << setprecision(3); for (int i = 0; i<n; i++) { cout << finalRadius[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...