Submission #1296457

#TimeUsernameProblemLanguageResultExecution timeMemory
1296457KindaGoodGamesMobile (BOI12_mobile)C++20
0 / 100
1097 ms31604 KiB
#include<bits/stdc++.h> #define ll long long #define int ll #define double long double #define pii pair<double,double> #define tiii tuple<int,int,int> using namespace std; double INF = numeric_limits<int>::max()/2; double dist(pii a, pii b){ double x = a.first-b.first; double y = a.second-b.second; return sqrtl((x*x)+(y*y)); } int n; double L; double intersect(pii a, pii b){ double ydiff = a.second-b.second; double x1 = a.first; double x2 = b.first; double res1 = (x1+x2)/2.0L; double res2 = ydiff; res2 /= 2.0L*(x1-x2); double p = res1+res2; p = min(p,L); p = max(p,0.0L); return p; } // double intersect(pii a, pii b){ // double ysum = a.second+b.second; // double x1 = a.first; double x2 = b.first; // double res1 = (x1*x1)-(x2*x2); // double res2 = ysum; // res2 /= 2.0L*(x1-x2); // double p = res1+res2; // p = min(p,L); // p = max(p,0.0L); // return p; // } int32_t main(){ cin >> n >> L; vector<pii> arr(n); for(int i = 0 ;i < n; i++){ cin >> arr[i].first >> arr[i].second; } double r = 0; for(int i = 0 ;i < n; i++){ for(int j = i+1; j < n; j++){ if(arr[i].first == arr[j].first) continue; double p = intersect(arr[i],arr[j]); double mi = INF; for(int k = 0; k < n; k++){ mi = min(mi, dist(arr[k], {p,0.0L})); } r = max(r,mi); } } cout << r << "\n"; }
#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...