• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

카운트 부분 질문드립니다.

23.11.21 01:17 작성 조회수 116

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

답변을 작성해보세요.

0

안녕하세요^^

카운트가 C보다 크다는 것은 mid 거리로 말을 배치했을 때 C마리 보다 더 많을 말을 배치할 수 있다는 의미이고 이뜻은 C마리의 말은 당연히 배치할 수 있다고 생각해야 합니다. 그래서 mid가 답이 되므로 answer에 넣어주어야 합니다.