# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
546952 | 2022-04-09T04:32:21 Z | mgl_diamond | Balloons (CEOI11_bal) | C++17 | 2000 ms | 3352 KB |
#include <bits/stdc++.h> using namespace std; using ll = long long; using ii = pair<double, double>; #define fi first #define se second #define debug(x) cout << #x << ": " << x << "\n" #define all(x) x.begin(), x.end() template<class T> bool umax(T &a, T b) { if (a<b) { a=b; return 1; } return 0; } template<class T> bool umin(T &a, T b) { if (a>b) { a=b; return 1; } return 0; } void setIO(string name="") { ios_base::sync_with_stdio(0); cin.tie(0); if (name.size()) freopen((name+".inp").c_str(),"r",stdin); if (name.size()) freopen((name+".out").c_str(),"w",stdout); } double dis(ii a, ii b) { double x=a.fi-b.fi, y=a.se-b.se; return x*x+y*y; } const int mxN=200000; int n; double x[mxN], r[mxN]; bool f(int mx, double dia) { for(int i=0; i<mx; ++i) { //debug(dis({x[i], r[i]}, {x[mx], dia})); //debug(r[i]+dia); double val=dis({x[i], r[i]}, {x[mx], dia}); double tmp=r[i]+dia; //cout << sqrt(val) << " " << tmp << "\n"; if (val<tmp*tmp) return 0; } return 1; } int main() { //setIO("input"); cin >> n; for(int i=0; i<n; ++i) cin >> x[i] >> r[i]; for(int i=1; i<n; ++i) { double lb=0, rb=r[i], mb; while (rb-lb>0.00001) { mb=(lb+rb)/2; if (f(i, mb)) lb=mb, r[i]=mb; else rb=mb; } } for(int i=0; i<n; ++i) cout << r[i] << " "; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | 10 numbers |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 212 KB | 1st numbers differ - expected: '247294217.0000000000', found: '247294000.0000000000', error = '217.0000000000' |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 212 KB | 505 numbers |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 61 ms | 340 KB | 2000 numbers |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2053 ms | 532 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2077 ms | 1060 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2066 ms | 1844 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2075 ms | 2100 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2082 ms | 2816 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 2072 ms | 3352 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |