페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#1977
스페셜 저지

계란 1초 128MB

문제

네 개의 바구니에 계란이 나뉘어 담겨있다. 

우리는 아래에 제시된 단위 작업을 통하여 계란을 한 바구니에 모두 옮겨 담고자 한다.

 

• 계란이 하나 이상 들어 있는 두 개의 서로 다른 바구니 A, B를 선택한다. • 선택된 각 바구니에서 계란을 하나씩 꺼내서 A, B가 아닌 다른 바구니에 이 두 개의 계란을 담는다.

 

예를 들어 바구니에 계란이 세 개, 한 개 담겨있다고 하자. 이 상태는 (3, 1, 0, 0)로 표시된다. 

그러면 이 상태에서 아래와 같은 세 번의 단위 작업으로 계란을 한 바구니에 모을 수 있다.

 

    (3,1,0,0) → (2,0,2,0) → (1,0,1,2) → (0,0,0,4)

 

괄호속의 숫자는 각 바구니에 들어있는 계란의 수를 표시한 것이다.

 

문제는 가능한 적은 횟수의 단위 작업을 사용하여 모든 계란을 한 곳에 모으는 것이다. 

여러분은 입력으로 받은 초기 바구니 상태에서 출발하여 

계란이 한 바구니에 모두 담기는 최종상태까지의 중간 단계를 차례대로 출력해야 한다.

 


입력

첫째 줄에는 채점의 기준이 되는 단위 작업의 사용 횟수 K가 주어진다.

그 다음 줄에는 각 바구니에 들어있는 계란의 수가 공백을 두고 나타난다. 

전체 계란의 수는 4개 이상, 3000개 이하이다.


출력

출력 파일의 첫줄에는 초기 바구니의 상태를 입력형식과 동일하게 출력해야 한다.

그 다음 줄부터는 각 단계별 바구니 상태를 하나씩 출력해야 한다. 

마지막 줄에는 반드시 한 바구니에 계란이 모두 모인 상태가 출력되어야 한다.


예제1

입력
4

3100
출력
3100

2020
1012
0004

출처

KOI 전국 2007 중1 | eva

역링크