작성자 없음
작성자 정보가 삭제된 글입니다.
자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
10. 마구간 정하기(결정알고리즘)
작성
·
155
0
if(count(arr, mid)==c) {
answer=mid;
lt=mid+1;
} else if(count(arr, mid)<c) rt=mid-1;
else lt=mid+1;
카운트가 c보다 큰 값인 경우에 answer=mid를 해주지 않으면 왜 오답으로 나오는지 모르겠습니다.
답변 1
안녕하세요^^
카운트가 C보다 크다는 것은 mid 거리로 말을 배치했을 때 C마리 보다 더 많을 말을 배치할 수 있다는 의미이고 이뜻은 C마리의 말은 당연히 배치할 수 있다고 생각해야 합니다. 그래서 mid가 답이 되므로 answer에 넣어주어야 합니다.