부러운 지수
면접 대비시간 제한2초메모리 제한512 MB
N과 k가 주어질 때, 이진수로 표현했을 때 1이 정확히 k개인 수 중 N보다 큰 최솟값을 구한다.
문제
앨리스와 밥에게는 정수 이 하나 있다. 두 사람은 이 정수가 마음에 들지 않는다. 어젯밤 칵테일 파티에 갔다가 다른 커플이 똑같은 정수를 쓰고 있다는 사실을 알았기 때문이다. 그래서 두 사람은 새 정수를 하나 장만하기로 했다.
밥은 다른 커플에게 깊은 인상을 주고 싶어서, 새 정수가 보다 반드시 커야 한다고 생각한다.
앨리스는 정수 를 유난히 좋아한다. 그래서 어떤 정수를 고르든 서로 다른 2의 거듭제곱 개의 합으로 쓸 수 있어야 한다고 생각한다.
밥은 구두쇠이기도 해서 돈을 되도록 적게 쓰고 싶어 한다. 정수의 값이 클수록 값도 비싸지므로, 밥은 조건을 만족하는 정수 중 가장 작은 것을 원한다.
입력
첫째 줄에 정수 과 가 공백으로 구분되어 주어진다. (, )
출력
보다 크면서 서로 다른 2의 거듭제곱 정확히 개의 합으로 나타낼 수 있는 가장 작은 정수 을 출력한다.