본문 바로가기
BOJ

[python] 백준 1002번 - 터렛

by yujinkimkim 2023. 2. 6.

1002번: 터렛 (acmicpc.net)

 

1002번: 터렛

각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다.

www.acmicpc.net

아이참!

첨에 읽는데 이름이 너무 많이 나와서

2~3번 읽음요!

상근이랑 백준이나 데려오셈요~

 

이거 첨에 풀이를

경우의 수 막 다 구해서

배열에 넣고 하는건가?

하고 와 답 없다 하는데

글쎄 구글링 하니까

수1였나 수2때 배웠던거 나오든데요??


import sys
import math

input = sys.stdin.readline

T = int(input())

for i in range(T):
    x1, y1, r1, x2, y2, r2 = map(int,input().split())

    distance = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)
    if distance == 0 and r1 == r2:
        print(-1)
    elif abs(r1 - r2) == distance or r1 + r2 == distance:
        print(1)
    elif abs(r1 - r2) < distance < (r1 + r2):
        print(2)
    else:
        print(0)

그 원의 방정식 내용이더라구요

 

누구더라 헝

백준이 기준으로 r1이 반지름인 좌표들은 다 되는 거니까

백준이 기준으로 원이 생기고

똑같이 상근이 기준으로도 원이 생기니까

 

원의 방정식 생각하면

원이 접하는 거는

안 만나거나, 한 점에서 만나거나, 두점에서 만나거나, 일치하거나 

니까 고걸 코드로 하면

백준 1002번 [파이썬] 터렛 : 두 원의 위치관계, 원의 방정식 (tistory.com)

 

백준 1002번 [파이썬] 터렛 : 두 원의 위치관계, 원의 방정식

[Python] 백준 알고리즘 온라인 저지 1002번 : 터렛 Python3 코드 import math n = int(input()) for _ in range(n): x1, y1, r1, x2, y2, r2 = map(int, input().split()) distance = math.sqrt((x1-x2)**2 + (y1-y2)**2) # 두 원의 거리 (원의방정

ooyoung.tistory.com

왕천재님 감사합니다

 

동심원에 반지름 같을 경우가 -1

내접이거나 외접일 경우가 1

두점에서 만날 경우가 2

외에는 0

 

오랜만에 원방 보니까 반갑네용

 

정답률 22 길래 겁부터 먹었는데

쿠쿠

dear. 민정언니 ο(=•ω<=)ρ⌒☆

댓글