E D R , A S I H C RSS

An Easy Problem

Difference between r1.10 and the current

@@ -1,3 +1,4 @@
[http://poj.org/problem?id=2453 원문보기]
== Description ==
아시다시피, 데이터는 컴퓨터에 이진수 형태로 저장됩니다. 우리가 토론할 문제는 양의 정수와 이 수의 이진 형태입니다.

@@ -5,13 +6,14 @@

예를들어, "78"이 주어지면, 여러분은 "1001110"과 같은 이진수 형태로 쓸 수 있습니다. 이 이진수는 4개의 1을 가지고 있습니다. "1001110" 보다 크고 4개의 1을 포함하는 가장 작은 정수는 "1010011"입니다. 출력값은 "83"이 되어야 합니다.

입력은 각 줄에 한개의 정수를 입력할 수 있습니다. (1 <= I <= 1000000) 
=== Input ===
각 줄에 한개의 정수를 입력할 수 있습니다. (1 <= I <= 1000000)
0이 나오면 입력을 종료합니다. 이 줄은 작업할 필요 없습니다.

출력은 각 줄에 한개의 정수를 출력하면 됩니다.
=== Output ===
각 줄에 한개의 정수를 출력하면 됩니다.

Sample Input
=== Sample Input ===
{{{
1
2
@@ -20,7 +22,7 @@
78
0
}}}
Sample Output
=== Sample Output ===
{{{
2
4
@@ -28,7 +30,7 @@
8
83
}}}
=== 풀이 ===
== 풀이 ==
|| 작성자 || 사용언어 || 개발시간 || 코드 ||
|| [권순의] || - || - || [An Easy Problem/권순의] ||
|| [김태진] || - || - || [An Easy Problem/김태진] ||


Description

아시다시피, 데이터는 컴퓨터에 이진수 형태로 저장됩니다. 우리가 토론할 문제는 양의 정수와 이 수의 이진 형태입니다.

양의 정수 I가 주어지면, 당신이 할 일은 I보다 큰 수 중 가장 작은 수 J를 찾습니다. I의 이진수 형태에서의 1의 개수와 J의 이진수 형태에서의 1의 개수는 일치합니다.

예를들어, "78"이 주어지면, 여러분은 "1001110"과 같은 이진수 형태로 쓸 수 있습니다. 이 이진수는 4개의 1을 가지고 있습니다. "1001110" 보다 크고 4개의 1을 포함하는 가장 작은 정수는 "1010011"입니다. 출력값은 "83"이 되어야 합니다.

Input

각 줄에 한개의 정수를 입력할 수 있습니다. (1 <= I <= 1000000)
0이 나오면 입력을 종료합니다. 이 줄은 작업할 필요 없습니다.

Output

각 줄에 한개의 정수를 출력하면 됩니다.

Sample Input

1
2
3
4
78
0

Sample Output

2
4
5
8
83
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:22:27
Processing time 0.0280 sec