Submission #1184285

#TimeUsernameProblemLanguageResultExecution timeMemory
1184285Francisco_MartinMobile (BOI12_mobile)C++20
100 / 100
290 ms16048 KiB
#include <bits/stdc++.h> using namespace std; #define debug(v) cerr<<#v" = "<<(v)<<"\n"; #define debugvec(v) do{cerr<<#v<<" = [";for(int i=0;i<v.size();i++)cerr<<v[i]<<(i==v.size()-1?"":", ");cerr<<"]\n";}while(0); #define fst first #define snd second #define gcd(x,y) __gcd(x,y) #define OnlineJudge(s) freopen((s".in"),"r",stdin); freopen((s".out"),"w",stdout); #define fastIO() cin.tie(0)->sync_with_stdio(0);cin.exceptions(cin.failbit); #define boolsolve() cout<<(solve()?"Yes":"No"); using ll=long long; using ull=unsigned long long; using pll=pair<ll,ll>; using vll=vector<ll>; using vpll=vector<pll>; using vvll=vector<vll>; const ll INF=1e10; const ll MOD=1e9; const ll MAXN=2e5+100; ll fexp(ll a,ll b,ll m=MOD){ ll r=1; for(a%=m;b;b>>=1,a=(a*a)%m)if(b&1)r=(r*a)%m; return r; } ll lcm(ll a,ll b){return a*b/gcd(a,b);} void solve(){ ll n, len; cin >> n >> len; vll A(n), B(n); for(int i=0; i<n; i++) cin >> A[i] >> B[i]; auto ok=[&](double m){ double d=0; for(int i=0; i<n; i++){ double a=sqrt(m*m-B[i]*B[i]), b=A[i]-a, c=A[i]+a; if(b<=d) d=max(d,c); } return d>=len; }; double l=1, r=INF; while(r-l>1e-3){ double m=(l+r)/2; if(ok(m)) r=m; else l=m; } cout << fixed << setprecision(4) << l; } int main(){ fastIO(); //OnlineJudge("") ll t=1; //cin >> t; while(t--){ solve(); //cout << "\n"; } 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...