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

#2746

상자쌓기(Partitioned-수분할) 1000초 32MB

문제

같은 크기의 정육면체 상자 N개가 있다. 이 상자들을 쌓는 방법을 구하고자 한다. 

쌓을 때 규칙은 왼쪽의 높이가 오른쪽보다 높거나 같아야 한다. 

예를 들어 N이 5일 경우 아래와 같이 7가지 경우가 있다.

상자의 개수 N이 주어질 때 규칙에 맞추어 상자를 쌓는 방법을 모두 구하고 

사전 편집상 내림차순으로 출력하는 프로그램을 작성하시오.


입력

첫 행에 상자의 개수 N ( 1 ≤ N ≤ 30) 이 주어진다.


출력

규칙에 맞추어 상자를 쌓는 방법을 모두 구하여 사전 편집상 내림차순으로 행으로 구분하여 출력하시오. 각 행에 구성된 수는 공백으로 구분한다.


예제1

입력
5
출력
5

41
32
311
221
2111
11111

출처

JOI 2005/2006 본선 3

역링크 공식 문제집만