Deprecated: strripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in /home/www/code/php_mylog/log_class.php on line 217
이샘코딩전문학원 문제은행 - 이샘코딩전문학원/이샘컴퓨터학원
문제은행
QUESTION BANK
프로그램 명 : 점프 1차 고2
문제
개구리가 수직선 위의 0에서 출발해서 오른쪽(x좌표가 증가하는 방향)으로 점프들을 수행한 후 어떤 수 x > 0에 도착하려 한다.

이 때, 점프 간격은 1로 부터 시작해서 항상 직전 점프한 간격의 2배로 증가해야 한다.


만일 점프간격을 2배씩 계속 증가시켜 마지막 목표 수 x를 지나칠 것 같으면, 필요한 경우 언제든지 점프 간격을 다시 처음 상태인 간격 1로 되돌아 갈 수 있다.

이것을 재시작 이라고 부른다.


예를 들어, 아래 <그림 1>과같이 x=19에 도달 하기 위해서 2번 재시작을 수행해서 (1+2+4+8)+(1+2)+(1)=19와 같이 7번의 점프로 도착 할수 있다.

 



개구리가 0에서 출발해서 어떤 양의 정수 N에 도달하기 위한 점프 횟수의 최솟값을 J(N)으로 나타내고 N의 점프넘버라고 부를 것이다.

예를 들어, <그림 1>을 보면 J(1)=1, J(3)=2, J(7)=3, J(15)=4, J(16)=5, J(18)=6, J(19)=7과 같음을 알 수 있다.