Submission #403052

#TimeUsernameProblemLanguageResultExecution timeMemory
403052SirCovidThe19thBalloons (CEOI11_bal)C++14
100 / 100
761 ms5396 KiB
#include <bits/stdc++.h>
using namespace std;

int main(){
    
    int n; cin >> n;
    //pos, rad
    stack<pair<long double, long double>> stack;
    for (int i = 0; i < n; i++){
        long double loc, sz; cin >> loc >> sz;
        while (!stack.empty()){
            sz = min(sz, ((loc-stack.top().first)*(loc-stack.top().first))/(4*stack.top().second));
            if (sz >= stack.top().second) stack.pop();
            else break;
        }
        stack.push({loc, sz});
        cout<<fixed<<setprecision(3)<<sz<<endl;
    }
}
#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...