#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
const int MXN = 2e5+5;
const ld eps = 1e-6;
int n;
ld x[MXN], ans[MXN];
int32_t main() {
cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0);
cout << fixed << setprecision(3);
cin >> n;
vector<int> stk;
for(int i=1; i<=n; i++) {
cin >> x[i] >> ans[i];
while(!stk.empty()) {
ans[i] = min(ans[i], (x[stk.back()]-x[i])*(x[stk.back()]-x[i]) / (4 * ans[stk.back()]));
if(ans[i] > ans[stk.back()]-eps) stk.pop_back();
else break;
}
stk.push_back(i);
cout << ans[i] << '\n';
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |