# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1116620 | pemguimn | Balloons (CEOI11_bal) | C++14 | 3 ms | 508 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 5;
int n, x[N], r[N];
long double ans[N];
long double calc(int i, int j){
double x1 = x[i], y1 = ans[i];
double x2 = x[j];
return (x1 * x1 + x2 * x2 - 2 * x1 * x2 ) / (4 * y1);
}
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
#ifndef Pemgu
#define task "BALLOONS"
freopen(task".inp", "r", stdin);
freopen(task".out", "w", stdout);
#endif // Pemgu
cin >> n;
for(int i = 1; i <= n; i++){
cin >> x[i] >> r[i];
ans[i] = r[i];
}
stack<int> st;
for(int i = 1; i < n; i++){
long double reach = r[i];
if(st.size()) reach = min(reach, calc(st.top(), i));
ans[i] = reach;
while(st.size() && calc(st.top(), i + 1) > calc(i, i + 1)) st.pop();
st.push(i);
}
while(st.size()){
ans[n] = min(ans[n], calc(st.top(), n));
st.pop();
}
for(int i = 1; i <= n; i++)
cout << setprecision(3) << fixed << ans[i] << "\n";
return 0;
}
Compilation message (stderr)
# | 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... |