Submission #639192

#TimeUsernameProblemLanguageResultExecution timeMemory
639192PietraMobile (BOI12_mobile)C++14
70 / 100
1094 ms15956 KiB
#include<bits/stdc++.h> #define int long long using namespace std ; const int maxn = 1e6 + 5 ; const double inf = 2e9 ; double n ; double l, x[maxn], y[maxn] ; bool check(double r){ double f = 0 ; for(int i = 1 ; i <= n ; i++){ if(r < y[i]) continue ; double dx = sqrt(((r*r) - (y[i]*y[i]))) ; double ini = x[i] - dx, fim = x[i] + dx ; if(ini <= f) f = max(f, fim) ; } return (f >= l) ; } int32_t main(){ cin >> n >> l ; for(int i = 1 ; i <= n ; i++) cin >> x[i] >> y[i] ; double ini = 0, fim = inf, mid, best ; int it = 50 ; while(it--){ mid = (ini + fim)/2 ; // printf("%.3lf\n", mid) ; if(check(mid)) best = mid, fim = mid ; else ini = mid ; } cout << fixed << setprecision(3) << fim << "\n" ; //printf("%.3lf\n", best) ; }

Compilation message (stderr)

mobile.cpp: In function 'int32_t main()':
mobile.cpp:32:37: warning: variable 'best' set but not used [-Wunused-but-set-variable]
   32 |     double ini = 0, fim = inf, mid, best ;
      |                                     ^~~~
#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...