답안 #485100

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
485100 2021-11-06T07:45:54 Z largefence Balloons (CEOI11_bal) C++17
70 / 100
2000 ms 6424 KB
#include <bits/stdc++.h>
using namespace std;

#define pw2(x) ((x)*(x))

double x[200000], r[200000], pck[200000];
int main() {
    //ios::sync_with_stdio(false);
    //cin.tie(0);
    //freopen("ws.INP", "r", stdin);
	//freopen("ws.OUT", "w", stdout);

	int n; scanf("%d", &n);
	for (int i = 0; i < n; i++)
        scanf("%lf %lf", &x[i], &r[i]);//cin >> x[i] >> r[i];
    pck[0] = r[0]; printf("%.3lf\n", pck[0]);
    int jj = 0;
    for (int i = 1; i < n; i++) {
        pck[i] = r[i];
        /*
        if distance between 2 center < sum of rad of circles => intersect
        ^ <=> sqrt((x[i] - x[j])^2 + (h[i] - h[j])^2) == h[i] + h[j] => maximal
        */
        for (int j = jj; j < i; j++)
            pck[i] = min(pck[i], pw2(x[i] - x[j]) / (4.0 * pck[j]));
        while (pck[jj] < pck[i]) jj++; // if before and not bigger it is definitely not a candidate
        printf("%.3lf\n", pck[i]);
    }
    return 0;
}

// How to AC ?

Compilation message

bal.cpp: In function 'int main()':
bal.cpp:13:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |  int n; scanf("%d", &n);
      |         ~~~~~^~~~~~~~~~
bal.cpp:15:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |         scanf("%lf %lf", &x[i], &r[i]);//cin >> x[i] >> r[i];
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB 10 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB 2 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB 505 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 332 KB 2000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 109 ms 816 KB 20000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 740 ms 1776 KB 50000 numbers
2 Correct 1833 ms 1820 KB 49912 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 753 ms 3408 KB 100000 numbers
# 결과 실행 시간 메모리 Grader output
1 Correct 779 ms 3936 KB 115362 numbers
2 Execution timed out 2089 ms 2992 KB Time limit exceeded
# 결과 실행 시간 메모리 Grader output
1 Correct 1719 ms 5252 KB 154271 numbers
2 Execution timed out 2099 ms 4076 KB Time limit exceeded
# 결과 실행 시간 메모리 Grader output
1 Correct 406 ms 6424 KB 200000 numbers
2 Execution timed out 2090 ms 4200 KB Time limit exceeded