강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

yumyum님의 프로필 이미지
yumyum

작성한 질문수

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

44. 마구간 정하기 (이분검색 응용 : 결정 알고리즘)

예제에서 2를 답이라고 판단하는데 의문이 있습니다.

작성

·

197

0

안녕하세요! 예제 풀이에 질문이 있습니다.

현재 예제에서 가장 가까운 말의 거리를  1 부터 9의 범위로 두고 문제를 풀이하셨는데요,

가장 가까운 말의 거리를 2로 두고 문제를 풀이해주시는 부분에서

1번에 말을 배치하고, (1과 거리가 2이상 떨어진)4번에 말을배치하고, (4와 거리가 2이상 떨어진) 8번에 말을 배치해서 총 3마리의 말이 잘 들어가니깐

답이 될 수 있다고 하셨는데, (1, 4, 8)번에 배치했을때 실질적으로 가장 가까운 말의 거리가 3이니깐 2는 답이 될 수 없는게 아닌가요?? 저는 답인지를 판단하는 과정에서 "실제 가장 가까운 거리차가 2인가?" 를 넣어야 한다고 생각했는데 제가 잘못판단한건지 궁금합니다.

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

2가 답으로 가능한 숫자라고 판단하는 것입니다. 실제 최종답을 찾아가는 과정이라고 생각하세요.

답을 2라고 놓고 시뮬레이션을 했을 때 실제로는 거리를 보니 3이라면 다음 단계에서 더 좋은 답인 3을 답으로 하게 되어 있습니다.  이분검색으로 좁혀들어가서 최종적으로 선택한 답이 실제답입니다. 

yumyum님의 프로필 이미지
yumyum

작성한 질문수

질문하기