Submission #1249181

#TimeUsernameProblemLanguageResultExecution timeMemory
1249181somefolkMobile (BOI12_mobile)C++20
90 / 100
1083 ms48172 KiB
#include <iostream> #include <cmath> #include <algorithm> #include <string> #include <vector> #include <map> #include <unordered_map> #include <queue> #include <set> #include <unordered_set> #include <complex> #include <list> #include <cassert> #include <chrono> #include <random> #include <stack> #include <iomanip> #include <fstream> using namespace std; #define endl "\n" #define int long long const int INF = 1e9+7; const int MOD = 1e9+7; void solve(){ int n; double m; cin >> n >> m; vector<pair<double, double>> a(n); for(int i = 0; i < n; i++){ cin >> a[i].first >> a[i].second; } auto check = [&](double R){ vector<pair<double, double>> pt; for(auto &[x, y] : a){ pt.push_back({x-sqrt(R*R-y*y), x+sqrt(R*R-y*y)}); } double r = 0; for(int i = 0; i < pt.size(); i++){ if(pt[i].first <= r){ r = max(r, pt[i].second); } } return (r >= m); }; double l = 1, r = 1.5e9, sol = 0; while(r-l > 1e-3){ double mid = (l+r)/2; if(check(mid)){ sol = mid; r = mid; } else { l = mid; } } cout << fixed << setprecision(4) << sol << endl; } int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); 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...