Algorithm/PS

[BOJ/백준] 8574 - Ratownik [python]

chanwoong1 2023. 3. 20. 19:49
728x90

문제 링크

 

8574번: Ratownik

W pierwszym wierszu standardowego wejścia znajdują się liczby całkowite: $n$, $k$, $x$, $y$ ($1 ≤ n, k ≤ 100\,000$, $0 ≤ x, y ≤ 10\,000$) oznaczające kolejno: liczbę dzieci, zasięg wzroku ratownika oraz jego położenie. W następnych $n$ 

www.acmicpc.net

문제 풀이

피타고라스의 정리를 이용해 (xi - x)^2 + (yi - y)^2 > k^2를 만족하는 케이스 수를 구해준다.

정답 코드

import sys

input = sys.stdin.readline
n, k, x, y = map(int, input().split())
ans = 0
for _ in range(n) :
    xi, yi = map(int, input().split())
    if ((xi - x) ** 2 + (yi - y) ** 2) ** 0.5 > k : ans += 1
print(ans)
728x90