mym0404   3년 전

N = 2, K = 2일때,

이분탐색으로 현재 검색하려는 값을 X라고 하고 X보다 작거나 같은 것의 개수를 C라고 한다면,

C가 K와 꼭 일치하는 경우가 없을수도 있습니다.

X=1 이면 C=1

X=2 이면 C=3 이 됩니다. (2가 두개 있어서)

그렇기 때문에

if(C == K)

  ans = X

같은 식을 쓰면 정답을 찾지 못하는 경우도 존재합니다.

if(C >= K)

  ans = X

와 같은식으로 정답을 업데이트 해나가야겠죠.


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