코딩/백준 (Python)
백준 7869번: 두 원 (Python)
접근 두 원의 중심 사이의 거리를 이용하여 위 그림과 같이 간단하게 두개의 원을 다시 정리하면 P(x, y)를 아래와 같이 표현할 수 있다. $$ x = \frac{r_1^2 - r_2^2 + d^2}{2 * d} $$ $$ y = \sqrt{d^2 - x^2} $$ 이 값을 이용하여 두 각도 theta1 과 theta2 를 구할 수 있고, 공통부분의 면적 또한 구할 수 있다. 코드 import sys from math import pi, atan2 x1, y1, r1, x2, y2, r2 = map(float, sys.stdin.readline().split()) d = ((x1 - x2) ** 2 + (y1 - y2) ** 2) ** 0.5 if d >= r1 + r2: ans = 0 if d
2021. 5. 7. 21:58
최근댓글