제출 #589119

#제출 시각아이디문제언어결과실행 시간메모리
589119jakubdMobile (BOI12_mobile)C++17
17 / 100
393 ms16848 KiB
#include <bits/stdc++.h>

using namespace std;

int main() {
  ios_base::sync_with_stdio(false); cin.tie(0);

  int n; double l; cin >> n >> l;

  vector<pair<long long, long long>> a;
  for (int i = 0; i < n; i++) {
    long long x, y; cin >> x >> y;
    a.push_back({x, y});
  }

  long double lo = 0, ri = 1e6;
  while (fabs(lo - ri) > 1e-6) {
    long double m = (lo + ri) / 2, cur = 0;
    
    for (int i = 0; i < n; i++) {
      long double d = sqrt(m * m - a[i].second * a[i].second);
      if (a[i].first - d <= cur) cur = max(cur, a[i].first + d);
    }

    if (cur - l > 1e-9) ri = m;
    else lo = m;
  }

  cout << fixed << setprecision(12) << lo << "\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...