BOJ/백준-1002-python

cosmos·2021년 6월 11일
2
post-thumbnail

문제📖

풀이🙏

  • 첫째 줄에 테스트 케이스의 개수 T가 주어진다.
  • 한줄에 x1,y1,r1,x2,y2,r2가 주어진다.
  • 이석원이 조규현과 백승환에게 류재명의 거리를 계산하라고 명령을 시킨 장본인이다.
  • 조규현(x1,y1)와 백승환(x2,y2)가 주어지고, 조규현이 계산한 류재명과의 거리 r1,과 백승환이 계산한 류재명과의 거리 r2가 주어졌을 때, 류재명이 있을 수 있는 위치의 수를 출력하라.
  • 만약 있을 수 있는 개수가 무한대일 경우에는 -1을 출력하라.

코드💻

# boj, 1002 : 터렛, python3
# 수학 알고리즘
from math import sqrt
import sys

def turret(x1, y1, r1, x2, y2, r2):
    distance = sqrt((x1-x2) ** 2 + (y1-y2) ** 2)
    
    if distance == 0 and r1 == r2:
        return -1
    elif abs(r1 - r2) == distance or r1 + r2 == distance:
        return 1
    elif abs(r1 - r2) < distance < r1 + r2:
        return 2
    return 0


if __name__ == '__main__':
    T = int(sys.stdin.readline())

    for _ in range(T):
        x1, y1, r1, x2, y2, r2 = map(int, sys.stdin.readline().split())
        print(turret(x1, y1, r1, x2, y2, r2))

결과😎

출처 && 깃허브📝

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

0개의 댓글