11662 - 민호와 강호

LeeKyoungChang·2022년 3월 14일
0

Algorithm

목록 보기
66/203
post-thumbnail

📚 11662 - 민호와 강호

민호와 강호

 

이해

수학적 공식을 이해 및 적용하는데 시간이 많이 걸리는 것 같다.
(빠르게 패스)

문제 설명 참고하기

 

소스

def threeSearch(left, right):
    while abs(right - left) > 1e-9:
        left3 = (2 * left + right) / 3
        right3 = (left + 2 * right) / 3
        if dist(left3) > dist(right3):
            left = left3
        else:
            right = right3
    return dist(left)


def dist(t):
    mx = ax * t + bx * (1 - t)
    my = ay * t + by * (1 - t)
    kx = cx * t + dx * (1 - t)
    ky = cy * t + dy * (1 - t)
    return ((kx - mx) ** 2 + (ky - my) ** 2) ** 0.5


ax, ay, bx, by, cx, cy, dx, dy = map(int, input().split())
print("%.16f" % threeSearch(0, 1))  # 비율을 1을 기준으로 했으므로

 

채점 결과
스크린샷 2022-03-14 오후 11 20 38

 


참고

profile
"야, (오류 만났어?) 너두 (해결) 할 수 있어"

0개의 댓글