칸토어 집합

시간 제한1초메모리 제한128 MB

문제

칸토어 집합은 0과 1 사이의 실수로 이루어진 집합으로, 구간 $[0, 1]$에서 시작하여 각 구간을 3등분한 뒤 가운데 구간을 반복적으로 제외하는 방식으로 만든다.

전체 집합이 유한하다고 가정하고, 다음 과정을 통해 칸토어 집합의 근사를 만들어 보자.

  1. -(하이픈) $3^N$개로 이루어진 문자열에서 시작한다.
  2. 문자열을 3등분한 뒤, 가운데 부분을 공백으로 바꾼다. 그러면 선(문자열) 2개가 남는다.
  3. 남은 각 선을 다시 3등분하고 가운데 부분을 공백으로 바꾼다. 이 과정을 모든 선의 길이가 1이 될 때까지 반복한다.

예를 들어 $N = 3$인 경우, 길이가 27인 문자열에서 시작한다.

---------------------------

가운데 부분을 공백으로 바꾼다.

---------         ---------

남은 두 선의 가운데 부분을 공백으로 바꾼다.

---   ---         ---   ---

한 번 더 반복한다.

- -   - -         - -   - -

모든 선의 길이가 1이 되면 멈춘다. $N$이 주어졌을 때, 마지막 과정이 끝난 뒤의 결과를 출력하는 프로그램을 작성하시오.

입력

입력은 여러 줄로 이루어진다. 각 줄에는 정수 $N$이 하나씩 주어진다. 입력은 파일의 끝(EOF)에서 끝난다. $N$은 $0 \le N \le 12$인 정수이다.

출력

입력으로 주어진 각 $N$에 대해, 해당하는 칸토어 집합의 근사를 한 줄에 하나씩 출력한다.