Submission #1225586

#TimeUsernameProblemLanguageResultExecution timeMemory
1225586jakeob77Balloons (CEOI11_bal)C++17
100 / 100
239 ms5440 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ins insert //cout<<fixed<<setprecision(3); 3 decimalke brez fixed pa 3 zanesljiva mesta const int MAXN=1e6+3; const long long linf=1e18; const int inf=1e9; const int mod=998244353;; void solve(){ int n;cin>>n; stack<pair<int,long double>>last;vector<long double>radij; for(int i=0;i<n;i++){ long double x,r;cin>>x>>r; auto calc=[](pair<long double,long double>par,long double temp)->long double{ return (par.first-temp)*(par.first-temp)/(4*par.second); }; long double max_r=r; while(!last.empty()){ pair<long double,long double>l=last.top(); long double last_max_r=calc(l,x); max_r=min(max_r,last_max_r); if(max_r>=l.second){ last.pop(); continue; } else break; } last.push({x,max_r}); radij.pb(max_r); } for(auto el:radij){cout<<fixed<<setprecision(4)<<el<<endl;} } int main(){ std::ios::sync_with_stdio(false); std::cin.tie(NULL); int t=1; while(t--) solve(); }
#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...