Submission #1288727

#TimeUsernameProblemLanguageResultExecution timeMemory
1288727tormentBalloons (CEOI11_bal)C++20
100 / 100
106 ms11064 KiB
#include<bits/stdc++.h>
using namespace std;

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int n;
    cin >> n;
    vector<long double>x(n), r(n);
    for(int i = 0;i < n;++i){
        cin >> x[i] >> r[i];
    }
    stack<array<long double, 2>>st;
    for(int i = 0;i < n;++i){
        long double mn = r[i];
        while(!st.empty()){
            mn = min(mn, (st.top()[0] - x[i]) * (st.top()[0] - x[i]) / (4 * st.top()[1]));
            if(mn > st.top()[1])st.pop();
            else break;
        }
        st.push({x[i], mn});
        cout << fixed << setprecision(3) << mn << '\n';
        r[i] = mn;
    }
}
#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...