Submission #1215916

#TimeUsernameProblemLanguageResultExecution timeMemory
1215916newsboyMobile (BOI12_mobile)C++20
100 / 100
413 ms16020 KiB
#include <iostream> #include <string> #include <vector> #include <algorithm> #include <iomanip> #include <set> #include <map> #include <numeric> #include <iomanip> #include <unordered_set> #include <unordered_map> #include <bitset> #include <queue> #include <deque> #include <stack> #include <cmath> #include <tuple> #include <cassert> #include <array> #include <list> #include <random> #include <initializer_list> using namespace std; using i64 = long long; using u64 = unsigned long long; using db = double; using ld = long double; constexpr i64 INF = 1E18; constexpr i64 MIN = -INF; constexpr i64 MAX = INF; constexpr int N = 1E4 + 10; struct Point { i64 x, y; }; void solve() { int n, L; cin >> n >> L; vector<Point> points(n); for (int i = 0; i < n; ++i) { cin >> points[i].x >> points[i].y; } db lo = 0.5, hi = 1.5E9; for (int _ = 0; _ < 60; ++_) { db mid = (lo + hi) / 2, maxr = 0; for (int i = 0; i < n; ++i) { db dx = sqrt(mid * mid - points[i].y * points[i].y); db l = points[i].x - dx, r = points[i].x + dx; if (l <= maxr) { maxr = max(maxr, r); } } if (maxr >= L) { hi = mid; } else { lo = mid; } } cout << hi << '\n'; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout << fixed << setprecision(10); int t = 1; /*cin >> t;*/ while (t--) { solve(); } 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...