Submission #573414

#TimeUsernameProblemLanguageResultExecution timeMemory
573414Rasoul006Mobile (BOI12_mobile)C++17
0 / 100
543 ms32528 KiB
#include <bits/stdc++.h> #define endl "\n" #define F first #define S second #define pb push_back #define all(x) x.begin() , x.end() #define mm1(dp) memset (dp , -1 , sizeof dp) #define mm0(dp) memset (dp , 0 , sizeof dp) #define mmo(dp) memset (dp , oo , sizeof dp) //#define mid ((r+l)/2.0) #define lx (n<<1) #define rx ((n<<1)|1) typedef long long ll; using namespace std; const int N = 1e6+5; const int MOD = 1e9+7; const long long oo = 4557430888798830399 ; ll n , le ; double x[N] , y[N] ; bool ch(double m) { double la = 0 ; for (int i = 0 ; i<n ; i++) { double p = sqrt((m*m) - (y[i]*y[i])); // cout << p << " " << x[i] - p << " " << la << endl ; if (x[i]-p <= la) { la = x[i]+p; if (la>=le) return true ; } else { return false ; } } return (la>=le ? true : false) ; } int main() { ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin >> n >> le ; for (int i = 0 ; i<n ; i++) { cin >> x[i] >> y[i] ; } double l = 0 , r = 1e18 ; while (r-l > 0.0000001) { double mid = (r+l)/2.0 ; if (ch(mid)) { r = mid ; } else { l = mid ; } } cout <<fixed << setprecision(6) << r << endl ; 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...