231일차 - BOJ no.1002

Dzeko·2022년 3월 10일
0
post-thumbnail

https://www.acmicpc.net/problem/1002

My Solution

import math, sys

result = []
T = int(sys.stdin.readline().rstrip())
for _ in range(T):
    x1, y1, r1, x2, y2, r2 = map(int, sys.stdin.readline().rstrip().split())

    dif = math.sqrt((x1-x2) ** 2 + (y1 - y2) ** 2)

    temp = [dif, r1, r2]
    x = max(dif, r1, r2)
    temp.remove(x)
    if dif == 0 and r1 == r2:
        result.append(-1)
    elif dif == r1 + r2 or abs(r1-r2) == dif:
        result.append(1)
    elif abs(r1-r2) < dif < (r1+r2):
        result.append(2)
    else:
        result.append(0)
for i in result:
    print(i)
두 원 중심의 거리를 구한 후, 두 원의 크기가 같고 같은 위치에 있을 때, 한 점에서 만날 때, 두 점에서 만날 때 경우의 수를 구한다.
profile
Do or Die

0개의 댓글