#include<bits/stdc++.h>
using namespace std;
int main() {
int n;
cin >> n;
vector<double> x(n) , r(n) , a(n);
for(int i = 0 ; i < n ; i++) {
cin >> x[i] >> r[i];
}
vector<pair<double , double>> st;
for(int i = 0 ; i < n ; i++) {
double ai = r[i];
while(st.size()){
double xi = st.back().first;
double ri = st.back().second;
double c = (pow((x[i] - xi) , 2) / (4 * ri));
if(c < ai) {
ai = c;
st.pop_back();
}
else break;
}
a[i] = ai;
st.push_back({x[i] , ai});
}
cout << fixed << setprecision(3);
for(int i = 0 ; i < n ; i++) {
cout << a[i] << "\n";
}
}
# | 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... |