Submission #482369

#TimeUsernameProblemLanguageResultExecution timeMemory
482369BertedBalloons (CEOI11_bal)C++14
100 / 100
237 ms8652 KiB
#include <iostream>
#include <stack>
#include <iomanip>
#include <vector>
#define ld long double
#define pdd pair<ld, ld>
#define fst first
#define snd second

using namespace std;

int N;
vector<pdd> S;

int main()
{
    ios :: sync_with_stdio(0); cin.tie(0);
    cin >> N;
    for (int i = 0; i < N; i++)
    {
        ld X, R; cin >> X >> R;
        while (S.size())
        {
            R = min(R, (X - S.back().fst) * (X - S.back().fst) / (4 * S.back().snd));
            if (R > S.back().snd) {S.pop_back();}
            else {break;}
        }
        S.push_back({X, R});
        cout << fixed << setprecision(3) << R << "\n";
    }
    return 0;
}
#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...