白駿1002
質問:https://www.acmicpc.net/problem/1002
アイデア:三角形を形成する条件付きキャビネットを分離する
アイデア:三角形を形成する条件付きキャビネットを分離する
import sys
T = int(sys.stdin.readline())
for t in range(T):
x_1, y_1, r_1, x_2, y_2, r_2 = map(int, sys.stdin.readline().split())
d = ((x_1-x_2)**2 + (y_1-y_2)**2)**(0.5)
d_1, d_2 = min([r_1, r_2]), max([r_1, r_2]) # 일반화
if d == 0 : # 두 터렛 위치가 동일
if d_1 != d_2: # 거리가 다름 > 불능
print(0)
else: # 거리 동일 > 원주
print(-1)
else:
if d_2 > d_1 + d: # 삼각형 안만들어짐
print(0)
elif d > d_1 + d_2: # 삼각형 안만들어짐
print(0)
elif d_2 == d_1 + d: # 일직선상 1
print(1)
elif d == d_1 + d_2: # 일직선상 2
print(1)
else:
print(2)
Reference
この問題について(白駿1002), 我々は、より多くの情報をここで見つけました https://velog.io/@ddangchani/백준-1002テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol