답안 #841627

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
841627 2023-09-01T18:49:55 Z a5a7 Mobile (BOI12_mobile) C++14
8 / 100
1000 ms 62988 KB
#include <bits/stdc++.h>
#define ALL(x) (x).begin(), (x).end()
#define REP(i, a, b) for (int i = (a); i < (b); i++)
#define READ(arr, n) for (int i = 0; i < (n); i++) cin >> arr[i];
#define ABS(a) (max((a), -(a)))
#define MOD 1000000007
using namespace std;
typedef long long ll;
 
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n; long double l;
    cin >> n >> l;
    long double x[n];
    long double y[n];
    long double right = 0;
    for (int i = 0; i < n; i++) cin >> x[i] >> y[i], right = max(right, sqrtl(x[i]* x[i] + y[i]*y[i])), right = max(right, sqrtl((x[i]-l)*( x[i]-l) + y[i]*y[i]));
    long double left = 0;
    while ((right-left) > (0.0005)){
        long double mid = (left+right)/2;
        pair<long double, long double> ranges[n];
        for (int i = 0; i < n; i++){
            long double sqr = sqrtl(max(mid*mid-y[i]*y[i], (long double) 0));
            ranges[i].first = x[i]-sqr;
            ranges[i].second = x[i]+sqr;
        }
        sort(ranges, ranges+n);
        long double bound = 0;
        for (int i = 0; i < n; i++){
            if (ranges[i].first <= bound){
                bound = max(bound, ranges[i].second);
            }
        }
        if (bound >= l){
            right = mid;
        }else{
            left = mid;
        }
    }
    cout << left << endl;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 352 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 604 KB Output is correct
2 Correct 4 ms 604 KB Output is correct
3 Correct 5 ms 348 KB Output is correct
4 Incorrect 7 ms 348 KB Output isn't correct
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 12 ms 604 KB Output is correct
2 Incorrect 11 ms 764 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 11 ms 600 KB Output is correct
2 Incorrect 11 ms 604 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 10 ms 604 KB Output is correct
2 Incorrect 12 ms 604 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 205 ms 5112 KB Output is correct
2 Incorrect 318 ms 5228 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 192 ms 5316 KB Output is correct
2 Correct 231 ms 4836 KB Output is correct
3 Incorrect 269 ms 5512 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 201 ms 5928 KB Output is correct
2 Incorrect 339 ms 5576 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 359 ms 6480 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 285 ms 6484 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1063 ms 31572 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1095 ms 31712 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1022 ms 37916 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1062 ms 37912 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1058 ms 44112 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1052 ms 44136 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1020 ms 50768 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1040 ms 50320 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1045 ms 62804 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1063 ms 62988 KB Time limit exceeded
2 Halted 0 ms 0 KB -