제출 #1278636

#제출 시각아이디문제언어결과실행 시간메모리
1278636foodBalloons (CEOI11_bal)C++20
100 / 100
89 ms6672 KiB
#include<bits/stdc++.h> #define ll long long using namespace std; ll n; ll x[200001]; double r[200001]; double ans[200001]; stack<pair<double,double>> st; double cal(double ir,ll ix,ll jx) { return (double)((jx-ix)*(jx-ix))/(4*ir); } int main() { // freopen("sequence.inp","r",stdin); // freopen("sequence.out","w",stdout); ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for(ll i=1;i<=n;i++) { cin >> x[i] >> r[i]; } for(ll i=1;i<=n;i++) { double res=r[i]; // for(ll j=1;j<=i-1;j++) // { // if(i!=j) // { // res=min(res,cal(ans[j],x[i],x[j])); // } // } while(!st.empty()) { res=min(res,cal(st.top().second,st.top().first,x[i])); if(res>=st.top().second) { st.pop(); continue; } else { break; } } ans[i]=res; st.push({x[i],ans[i]}); } for(ll i=1;i<=n;i++) { cout << setprecision(3) << fixed << ans[i] << '\n'; } }
#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...