Submission #168852

#TimeUsernameProblemLanguageResultExecution timeMemory
168852Uzumaki_NaturooMobile (BOI12_mobile)C++14
0 / 100
255 ms8192 KiB
/// I’m not gonna run away, /// I never go back on my word! /// That’s my nindo: my ninja way. /// ICPC next year #pragma GCC OPTIMIZE("03") #include<bits/stdc++.h> using namespace std ; const int N = 1e6+5 ; int n ,l ,x[N] ,y[N] ; long double distance(long double x1,long double y1,long double x2,long double y2){ return 1ll*(x2-x1)*(x2-x1) + 1ll*(y2-y1)*(y2-y1) ; } int main(){ scanf("%d%d",&n,&l); for(int i=0;i<n;++i) scanf("%d%d",x+i,y+i); long double best1 = -1e18 ,best2 = -1e18 ; int p1 = 0 ,p2 = 0 ; for(int i=0;i<n;++i){ long double d = distance(0,0,x[i],y[i]); if(d>best1) best1 = d ,p1 = i ; d = distance(l,0,x[i],y[i]); if(d>best2) best2 = d ,p2 = i ; } long long a = 1ll*x[p1]*x[p1] - 1ll*x[p2]*x[p2] + 1ll*y[p1]*y[p1] - 1ll*y[p2]*y[p2] ; long long b = 2ll * (x[p1] - x[p2]) ; long double x0 = 1.0 * a / b ; long double ans = 0 ; for(int i=0;i<n;++i) ans = max(ans ,distance(x0,0,x[i],y[i])); cout << fixed << setprecision(6) << sqrtl(ans) << endl ; return 0; }

Compilation message (stderr)

mobile.cpp:6:0: warning: ignoring #pragma GCC OPTIMIZE [-Wunknown-pragmas]
 #pragma GCC OPTIMIZE("03")
 
mobile.cpp: In function 'int main()':
mobile.cpp:15:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%d",&n,&l);
     ~~~~~^~~~~~~~~~~~~~
mobile.cpp:16:31: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     for(int i=0;i<n;++i) scanf("%d%d",x+i,y+i);
                          ~~~~~^~~~~~~~~~~~~~~~
#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...