Submission #1241863

#TimeUsernameProblemLanguageResultExecution timeMemory
1241863simplemind_31Mobile (BOI12_mobile)C++20
25 / 100
1096 ms16016 KiB
#include <bits/stdc++.h> #define ALL(x) x.begin(),x.end() using namespace std; typedef long long ll; typedef long double ld; ll n,L,con; bool cmp(pair<ll,ll> x,pair<ll,ll> y){ if(x.first==y.first){ return abs(x.second)<abs(y.second); } return x.first<y.first; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0); cin >> n >> L; vector<pair<ll,ll>> point(n); for(int i=0;i<n;i++){ cin >> point[i].first >> point[i].second; } sort(ALL(point),cmp); ld iz=0,de=4e9; while(con<64){ ld mid=(iz+de)/2; pair<ld,ld> last={0,0}; for(int i=0;i<n;i++){ ld dist=sqrtl(mid*mid-(point[i].second*point[i].second)); pair<ld,ld> now={((ld)point[i].first)-dist,((ld)point[i].first)+dist}; if(last.second<now.first || now.second<last.first){ continue; } last={min(last.first,now.first),max(last.second,now.second)}; } if(last.second>=(ld)L){ de=mid; }else{ iz=mid; } con++; } cout << fixed << setprecision(12) << iz; }
#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...