제출 #1202434

#제출 시각아이디문제언어결과실행 시간메모리
1202434SSKMFBalloons (CEOI11_bal)C++20
100 / 100
192 ms2096 KiB
#include <bits/stdc++.h>
using namespace std;

pair <int , long double> candidati[200001];

inline long double Necesar (pair <int , long double>& anterior , const int actual)
{
    return 1LL * (actual - anterior.first) * (actual - anterior.first) / (4 * anterior.second);
}

int main ()
{
    ios :: sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);

    int lungime;
    cin >> lungime;

    cout << fixed << setprecision(3);

    for (int indice = 1 ; indice <= lungime ; indice++)
    {
        pair <int , long double> actual;
        cin >> actual.first >> actual.second;

        while (candidati[0].first)
        {
            actual.second = min(actual.second , Necesar(candidati[candidati[0].first] , actual.first));
            if (actual.second >= candidati[candidati[0].first].second) { candidati[0].first--; }
            else { break; }
        }
        
        candidati[++candidati[0].first] = actual;

        cout << actual.second << '\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...