Submission #1269928

#TimeUsernameProblemLanguageResultExecution timeMemory
1269928nabeul001Mobile (BOI12_mobile)C++20
0 / 100
309 ms31560 KiB
//Indeed Hardship comes with ease [94:6] //Man will not get anything unless he works hard [53:39] //ᴇᴀᴄʜ ᴘᴇʀꜱᴏɴ ᴡɪʟʟ ᴏɴʟʏ ʜᴀᴠᴇ ᴡʜᴀᴛ ᴛʜᴇʏ ᴇɴᴅᴇᴀᴠᴏᴜʀᴇᴅ ᴛᴏᴡᴀʀᴅꜱ [53:39] #include<bits/stdc++.h> using namespace std; #define ll long long #define ld long double #define all(a) a.begin(), a.end() #define rall(a) a.rbegin(), a.rend() bool comp(const pair<ld,ld>&a,const pair<ld,ld>&b) { return a.first < b.first; } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cout << fixed << setprecision(6); ll n,l; cin >> n >> l; vector<pair<ld,ld>> a(n); for(int i = 0; i < n; i++) { cin >> a[i].first >> a[i].second; } sort(a.begin(), a.end(), comp); auto ok = [&](ld c) { pair<ld,ld> x = {c,0.0}; auto it = lower_bound(all(a),x,comp); if(it==a.begin()) { return false; } else if(it==a.end()) { return true; } else { auto [rx, ry] = *it; auto [lx, ly] = *(prev(it)); ld ldist = hypot(lx - c, ly); ld rdist = hypot(rx - c, ry); return rdist >= ldist; } }; ld low = 0.0; ld high = l; ld diff= 1e-7; while(high-low>diff) { ld mid = (low+high)/2.0; if(ok(mid)) { low=mid; } else { high=mid; } } cout << high << "\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...