Submission #470002

#TimeUsernameProblemLanguageResultExecution timeMemory
470002Shogun3103Mobile (BOI12_mobile)C++17
12 / 100
709 ms19012 KiB
#include <bits/stdc++.h> using namespace std; void setIO(string fileName = ""){ ios_base::sync_with_stdio(false), cin.tie(0), cout.tie(0); if(fileName.length()){ freopen((fileName+".in").c_str(), "r", stdin); freopen((fileName+".out").c_str(), "w", stdout); } } #define ll long long #define ld long double #define FOR(i,a,b) for(__typeof(b) i=a; i<=b; i++) #define FOD(i,a,b) for(__typeof(b) i=b; i>=a; i--) #define EACH(u, v) for(auto& u : v) #define sz(x) ((int)(x).size()) #define all(x) (x).begin(), (x).end() #define pb push_back #define ii pair<int,int> #define iii pair<int,ii> #define ld2 pair<ld, ld> #define ll2 pair<ll, ll> #define X first #define Y second #define ed "\n" #define sp " " const int oo = 1e9 + 7; const int N = 1e6 + 10; int n, len; ii a[N]; ld cur; bool calc(ld x) { FOR(i, 1, n) { ld delta = sqrt(x * x - a[i].Y * a[i].Y); ld x = a[i].X - delta, y = a[i].X + delta; if(x <= cur) cur = max(cur, y); } return cur >= len; } void solve() { cin >> n >> len; FOR(i, 1, n) cin >> a[i].X >> a[i].Y; ld l = 1, r = 1.5e9; while(l <= r) { ld m = (l + r) * 0.5; cur = 0; if(calc(m)) { r = m - 0.0001; } else { l = m + 0.0001; } } cout << fixed << setprecision(6) << r; } int main() { setIO(""); int t; t = 1; //cin >> t; FOR(i, 1, t) { solve(); } return 0; }

Compilation message (stderr)

mobile.cpp: In function 'void setIO(std::string)':
mobile.cpp:8:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    8 |         freopen((fileName+".in").c_str(), "r", stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mobile.cpp:9:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    9 |         freopen((fileName+".out").c_str(), "w", stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...