https://www.acmicpc.net/problem/1004
출발점과 도착점이 각 행성들 범위 안에 있으면 +1
둘다 범위 안에 있으면 경계를 지나가지 않아도 됨으로 보정 -2
#include <iostream>
using namespace std;
int X[55];
int Y[55];
int P[55];
int main()
{
int T;
cin >> T;
for (int i = 0; i < T; i++)
{
int x1, y1, x2, y2;
cin >> x1 >> y1 >> x2 >> y2;
int n;
cin >> n;
for (int j = 0; j < n; j++)
{
cin >> X[j];
cin >> Y[j];
cin >> P[j];
}
int cnt = 0;
for (int j = 0; j < n; j++)
{
int check = 0;
if ((x1 - X[j])*(x1 - X[j]) + (y1 - Y[j])*(y1 - Y[j]) < P[j] * P[j]) {
check++;
cnt++;
}
if ((x2 - X[j])*(x2 - X[j]) + (y2 - Y[j])*(y2 - Y[j]) < P[j] * P[j]) {
check++;
cnt++;
}
if (check == 2)
cnt -= 2;
}
cout << cnt << endl;
}
}
'알고리즘 문제 풀이' 카테고리의 다른 글
[백준] - Fly me to the Alpha Centauri - 복습 (0) | 2021.01.31 |
---|---|
[백준] - 다리 놓기 - 복습 (0) | 2021.01.31 |
[백준] - 분산처리 - 복습 (0) | 2021.01.30 |
[백준] - 피보나치 함수 - 복습 (0) | 2021.01.30 |
[백준]터렛 - 복습 (0) | 2021.01.30 |
댓글