lower bound와 upper bound에 대해 알아보세요.
10816번 - 숫자 카드 2
33-47 이 문제가 있는 것이 아닐까요?
이진탐색을 하려면 정렬이 되어 있어야 하는데 check_card 는 정렬이 안되어 있기 때문에 이전 질의한 결과를 다시 찾는 것이 정상 동작하지 않을 것이고,
그러면 동일한 질문을 여러번 하면 오래 걸리지 않을까 합니다.
check_card도 정렬한 다음에 결과를 뽑고 (중복을 제거하고 해도 되고...)
출력시에 해당하는 결과를 찾아서 출력하는 것도 방법일 수 있을 것 같네요.
======================================
사실 이 문제는 수의 범위가 20,000,001 이라서 count 배열을 int 로 만들어도 80M 수준이기 때문에 각 숫자를 count 하고
그 결과를 출력하는 것이 가장 빠른 해가 아닐까 합니다.
댓글을 작성하려면 로그인해야 합니다.
jjj5306 2년 전 1
M에 같은 숫자가 있는 경우도 이분탐색으로 체크해서 실행되도록 코드를 짰는데,아마 이 부분에서 시간이 오래걸리는 것 같습니다. 더 줄일 부분을 모르겠습니다.