지우개
Unrated
한국어
Language
Contribute a translation- Time limit
- 1000 ms
- Memory limit
- 1024 MB
- Submissions
- 0
- Correct
- 0
- Solved by
- 0
- AC rate
- —
Statement
$ N $개의 칸에 $ 1 $ 부터 $ N $ 까지의 수들이 왼쪽부터 순서대로 저장되어 있다. 또, 각 칸은 왼쪽부터 $ 1 $ 부터 $ N $까지 순서대로 번호가 붙어 있다. 즉, 처음에는 각 칸의 번호와 각 칸에 저장된 수가 같다.
아래 그림은 $ N = 7 $일 때의 예이다.
다음 작업을 수가 정확히 하나가 남을 때 까지 반복한다.
(A) 홀수번 칸의 수들을 모두 지운다 (B) 남은 수들을 왼쪽으로 모은다.
제일 첫 작업의 (A) 단계가 끝나면 칸들의 상태는 다음과 같을 것이다.
(B) 단계가 끝나면 다음과 같을 것이다.
두번째 작업이 진행되면 칸들은 아래 두 그림과 같이 바뀔 것이다.
이제 수가 하나 남았으므로 작업은 더 이상 진행되지 않는다.
$ N $을 입력으로 받아 위와 같이 작업을 진행했을 때 마지막으로 남는 수를 계산하는 프로그램을 작성하라.
Constraints
- $ 1 \le N \le 100 $
Subtasks
- (5점) 입출력 예제만이 주어짐.
- (15점) $ N \le 8 $
- (30점) $ N $은 1, 2, 4, 8, 16, 32, 64 중 하나이다. 즉, $ N $은 1이거나, 2이거나, 2를 여러 번 곱한 수 중 하나이다.
- (50점) 추가 제약 조건 없음
Input
첫 번째 줄에 정수 $ N $이 주어진다.
Output
마지막으로 남는 수를 한 줄에 출력한다.
Examples
Sample input 1
1
Sample output 1
1
Sample input 2
2
Sample output 2
2
Sample input 3
5
Sample output 3
4
Tags
No tags yet