99클럽 코테 스터디 21일차 TIL + 징검다리

히치키치·2024년 6월 11일
0

항해99코테스터디

목록 보기
13/13
def solution(distance, rocks, n):
    rocks.append(distance)
    rocks.sort()
    left, right = 0, distance
    
    while left<=right:
        mid = (left+right)//2
        min_distance = float("inf")
        remove_cnt = 0
        curr = 0
        
        for rock in rocks:
            diff = rock - curr
            if diff<mid:
                remove_cnt+=1
            else:
                min_distance = min(min_distance, diff)
                curr=rock
        if remove_cnt>n:
            right=mid-1
        else:
            answer = min_distance
            left=mid+1
        
                

    return answer

0개의 댓글