첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 이루어져 있다.
한 줄에 x1, y1, r1, x2, y2, r2가 주어진다. x1, y1, x2, y2는 -10,000보다 크거나 같고, 10,000보다 작거나 같은 정수이고, r1, r2는 10,000보다 작거나 같은 자연수이다.
3
0 0 13 40 0 37
0 0 3 0 7 4
1 1 1 1 1 5
각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다.
2
1
0
두 점의 좌표 ( (x1, y1), (x2, y2) )가 주어지고, 두 점으로부터 목표물의 거리(r1, r2) 가 주어진다.
이때 목표물이 있을 수 있는 위치는, 중심이 (x1,y1), 반지름이 r1인 원과 중심이 (x2, y2), 반지름이 r2인 원 두개가 접하는 점의 개수(n)를 구하는 것과 같다.
네가지 경우로 나눌 수 있다.
이걸 그대로 조건문으로 옮기면 될 것 같다..!
T = int(input())
for i in range(T):
x1, y1, r1, x2, y2, r2 = list(map(int, input().split()))
d = ((x1-x2)**2 + (y1-y2)**2) ** 0.5
if d == 0 and r1 == r2:
print(-1)
elif d == r1 + r2 or d == abs(r1-r2) :
print(1)
elif abs(r1-r2) < d < r1 + r2 :
print(2)
else :
print(0)