백준 11662번 민호와 강호

DARTZ·2022년 5월 18일
0

알고리즘

목록 보기
64/135
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())

수학적 사고가 필요한데.. 모르겠다.. 아직까지는..

profile
사람들이 비용을 지불하고 사용할 만큼 가치를 주는 서비스를 만들고 싶습니다.

0개의 댓글