jintak0401   4년 전

코드가 어떻게 동작하는지 설명드리자면

bfs 함수는 인자로 받는 down 이상, up 이하의 수만 있는 길을 따라 도착지까지 가는 함수입니다.

solve 함수는 입력으로 받은 필드인 arr 과 필드의 숫자 종류를 정렬해 놓은 num 리스트를 인자로 받습니다. 그리고 이분탐색을 하는데

먼저 출발지부터 도착지까지 가는 루트 중 최대값이 최소가 되는 길을 찾습니다. 그 길의 최대값은 num[right] 가 됩니다. ( right 가 해당 루트의 최대값이 존재하는 num 리스트내 인덱스 입니다.)

그리고 출발지부터 도착지까지 가는 루트 중, 최대값이 num[right] 이면서 최솟값이 최댓값이 되는 루트를 찾습니다. 그 길의 최솟값은 num[left]가 됩니다. 



어디가 잘못되었을까요? 반례만 알려주셔도 감사합니다.

댓글을 작성하려면 로그인해야 합니다.