반응형
https://www.acmicpc.net/problem/1004
출발점과 도착점 중에서 하나의 점만 각 원 안에 포함될 때 횟수를 증가시켜주었습니다.
포함 여부는 점 사이의 거리와 원의 반지름으로 구해주었습니다.
#include <cstdio>
int t, x1, y1, x2, y2, cx, cy, r, n, c;
int getVal(int xx, int yy) {
return (cx - xx) * (cx - xx) + (cy - yy) * (cy - yy);
}
int main() {
scanf("%d", &t);
while (t--) {
c = 0;
scanf("%d %d %d %d %d", &x1, &y1, &x2, &y2, &n);
while (n--) {
scanf("%d %d %d", &cx, &cy, &r);
c += (getVal(x1, y1) <= r * r) ^ (getVal(x2, y2) <= r * r);
}
printf("%d\n", c);
}
}
반응형
'Algorithm' 카테고리의 다른 글
백준 1009 : 분산처리 (0) | 2021.11.18 |
---|---|
백준 13511 : 트리와 쿼리 2 (0) | 2021.11.18 |
백준 1193 : 분수 찾기 (0) | 2021.11.18 |
백준 1929 : 소수 구하기 (0) | 2021.11.18 |
백준 1978 : 소수 찾기 (0) | 2021.11.18 |