Submission #1176056

#TimeUsernameProblemLanguageResultExecution timeMemory
1176056qs1Balloons (CEOI11_bal)C++20
30 / 100
343 ms3452 KiB
#include<bits/stdc++.h>
using namespace std;
#define lli long long int
#define ld long double
#define mp make_pair


int main(){
  lli x;
  ld a,r,mn;
  stack<pair<ld,ld>>v;//{x,radius/y}
  cin>>x;
  cout<<setprecision(16);
  while(x--){
    cin>>a>>r;
    mn=999999999;
    while(!v.empty()&&(a-v.top().first)*(a-v.top().first)/(4*v.top().second)>=v.top().second){
      mn=min(mn,(a-v.top().first)*(a-v.top().first)/(4*v.top().second));
      v.pop();
    }
    r=min(r,mn);
    if(v.empty()){
      cout<<r<<endl;
    }
    else{
      r=min(r,(a-v.top().first)*(a-v.top().first)/(4*v.top().second));
      cout<<r<<endl;
    }
    v.push(mp(a,r));
  }
}
#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...