Submission #371512

#TimeUsernameProblemLanguageResultExecution timeMemory
371512CodurrMobile (BOI12_mobile)C++14
0 / 100
1097 ms40368 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define all(x) (x).begin(),(x).end() #define rall(x) (x).rbegin(),(x).rend() signed main(){ ios::sync_with_stdio(0);cin.tie(0); int n,l; cin>>n>>l; vector<pair<double,double>> v(n); for(int i=0;i<n;i++) cin>>v[i].first>>v[i].second; for(int i=1;i<n;i++){ if(v[i-1].first==v[i].first){ int x=i-1; v.erase(v.begin()+i); i=x; } } double l1=0,r=10; for(int j=1;j<100;j++){ double m=(l1+r)/2; bool ans=true; vector<pair<double,double>> c(n); for(int i=0;i<n;i++){ c[i].first=v[i].first-sqrt(m*m-v[i].second*v[i].second); c[i].second=v[i].first+sqrt(m*m-v[i].second*v[i].second); } if(c[0].first>0) ans=false; else if(c[n-1].second<l) ans=false; else{ for(int i=0;i<n-1;i++){ if(c[i+1].first>c[i].second) {ans=false; break;} } } if(ans) r=m; else l1=m; } cout<<fixed<<setprecision(6)<<r; 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...
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...