시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
어떤 보안 회사는 하나의 양의 정수 A에서 비밀번호에 사용할 두 정수를 만들려고 한다.
먼저 A를 이진수로 나타냈을 때 포함된 1의 개수를 x라고 하자. 다음 두 정수를 찾아야 한다.
A보다 작고, 이진수에 포함된 1의 개수가 x개이며, A에 가장 가까운 정수A보다 크고, 이진수에 포함된 1의 개수가 x개이며, A에 가장 가까운 정수두 정수를 찾아 출력하는 프로그램을 작성하시오.
첫째 줄에 양의 정수 A가 주어진다.
1 <= A <= 10^18
A보다 작은 정수 중 조건을 만족하는 가장 가까운 정수와, A보다 큰 정수 중 조건을 만족하는 가장 가까운 정수를 한 줄에 공백으로 구분하여 출력한다.
어느 한쪽에 조건을 만족하는 정수가 존재하지 않으면, 그 위치에는 0을 출력한다.