Submission #1212807

#TimeUsernameProblemLanguageResultExecution timeMemory
1212807nguyenkhangninh99Mobile (BOI12_mobile)C++20
100 / 100
679 ms31716 KiB
#include <bits/stdc++.h> using namespace std; #define int long long signed main(){ ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n, L; cin >> n >> L; vector<array<int, 2>> a(n); for(int i = 0; i < n; i++) cin >> a[i][0] >> a[i][1]; double l = 0, r = 1e9; for(int _ = 0; _ <= 50; _++){ double mid = (l + r) / 2; vector<array<double, 2>> cover(n); for (int i = 0; i < n; i++) { if(a[i][1] > mid) cover[i][0] = cover[i][1] = -1e18; else{ cover[i][0] = a[i][0] - sqrt(mid * mid - a[i][1] * a[i][1]); cover[i][1] = a[i][0] + sqrt(mid * mid - a[i][1] * a[i][1]); } } double cur = 0; for (int i = 0; i < n; i++) { if (cover[i][0] > cur) continue; cur = max(cur, cover[i][1]); } if(cur >= L) r = mid; else l = mid; } cout << fixed << setprecision(10) << l; }
#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...