Submission #1294755

#TimeUsernameProblemLanguageResultExecution timeMemory
1294755sritthebossMobile (BOI12_mobile)C++20
0 / 100
266 ms32404 KiB
#include "bits/stdc++.h" #define INF 1e18 using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); double n, l; cin >> n >> l; vector<pair<double, double>> stations(n); for (int i = 0; i < n; i++) { cin >> stations[i].first >> stations[i].second; } stack<pair<double, double>> s; s.push({0, -INF}); for (int i = 1; i < n; i++) { double d = (pow(stations[i].first, 2) + pow(stations[i].second, 2) - pow(stations[s.top().first].first, 2) - pow(stations[s.top().first].second, 2)) / (2 * (stations[i].first - stations[s.top().first].first)); while (d < s.top().first) { s.pop(); d = (pow(stations[i].first, 2) + pow(stations[i].second, 2) - pow(stations[s.top().first].first, 2) - pow(stations[s.top().first].second, 2)) / (2 * (stations[i].first - stations[s.top().first].first)); } s.push({i, d}); } double r = INF; while (s.size() > 1) { pair<double, double> p = s.top(); s.pop(); r = min(r, pow(stations[p.first].first - p.second, 2) + pow(stations[p.first].second, 2)); } cout << sqrt(r) << endl; }
#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...