Submission #1241198

#TimeUsernameProblemLanguageResultExecution timeMemory
1241198newbie_tMobile (BOI12_mobile)C++20
100 / 100
444 ms18508 KiB
#include <bits/stdc++.h> using namespace std; vector<pair<double, double>> pts; int n; double L; bool works(double d){ double currDistCovered = 0.0; for(int i = 0; i < n; i++){ double dist = sqrt(d*d - pts[i].second*pts[i].second); double start = pts[i].first - dist; double end = pts[i].first + dist; if(start <= currDistCovered){ currDistCovered = max(currDistCovered, end); } } return currDistCovered >= L; } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cin >> n >> L; pts.resize(n); for(int i = 0; i < n; i++) cin >> pts[i].first >> pts[i].second; double good = 1.5e9; double bad = -1.0; for(int i = 0; i < 50; i++){ double mid = bad + (good - bad)/2; if(works(mid)){ good = mid; } else { bad = mid; } } cout << fixed << setprecision(12) << good; }
#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...