티스토리 뷰
반응형
[조건]
[예상/요구 결과]*Case 개수를 넣고 그 뒤 6개의 수를 Case 개수만큼 입력한다
(아래는 3을 입력했고 6개의 수를 3회 입력함)
[코드]
import math
t = int(input())
for i in range(t):
x1, y1, r1, x2, y2, r2 = map(int, input().split())
dist = math.sqrt((x2-x1)**2 + (y2-y1)**2)
if x1 == x2 and y1 == y2 :
if r1 == r2:
print(-1)
else:
print(0)
else:
if r1+r2 > dist > abs(r1-r2):
print(2)
elif r1 + r2 == dist or abs(r1 - r2) == dist:
print(1)
else :
print(0)
* map, sqrt, abs의 사용 이유 이해할 것 !
[주의사항]
1. 해당 문제는 첫번째로 평면 좌표 상에서 두 점 사이의 거리를 구하는 문제입니다.
2. 두번째로 각 점을 중심으로 하는 '원'의 위치 관계에 대한 이해가 있어야 합니다.
3. 원의 위치 관계에서 2점에서 만나는지, 1점에서 만나는지(외접/내접), 아니면 아예 만나지 않는지 이해해야 합니다.
4. A점 기준에서 B점까지의 거리와 접점뿐만 아니라 B점 기준에서 A점까지의 거리와 접점도 계산 해 보아야 합니다.
[추가 정보]
1. 교점이 0개인 경우
2. 교점이 1개인 경우
3. 다른 두 점에서 만나는 경우 ( 교점이 2개인 경우 )
반응형
'IT > Coding' 카테고리의 다른 글
백준 2525번 / 오븐 시계 / 파이썬 (Python) (0) | 2022.11.05 |
---|---|
백준 2884번 / 알람 시계 / 파이썬 (Python (0) | 2022.11.03 |
백준 1001번 / A-B / 파이썬 (Python) (0) | 2022.09.14 |
백준 1000번 / A+B / 파이썬 (Python) (0) | 2022.09.14 |
백준 10951번 A+B - 4 / 파이썬(Python) (0) | 2021.02.03 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 슈퍼푸드
- 슈퍼곡물
- 심장건강
- Today's Jazz
- 알고리즘
- jazz
- 중학수학 상
- 다이어트
- 코딩
- 주의사항
- 브레인워
- 재즈
- 두뇌향상
- 백준
- 오늘의재즈
- 항산화
- 티스토리챌린지
- 파이썬
- 두뇌
- 정답
- 두뇌트레이닝
- XRP
- for문
- 중학수학 1-1
- 오블완
- 중학수학 코딩
- FTX
- 건강
- 리플
- 비트코인
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함