만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

NNN-수

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

요약
N이 주어질 때, 각 자리의 값이 그 자리 번호의 숫자가 나타난 횟수와 같은 N자리 N진수를 오름차순으로 모두 구합니다.
난이도

보통10점 중 6점

유형
백트래킹, 수학, 구현
정답자
아직 제출이 없습니다

문제

우리는 수를 십진법으로 쓰는 데 익숙하다. 123이라고 쓰면 실제로는 1⋅102+2⋅10+31 \cdot 10^2 + 2 \cdot 10 + 3을 나타낸다.

일반적으로 NN진법에서는 00부터 N−1N-1까지의 숫자를 쓰며, abcabc는 a⋅N2+b⋅N+ca \cdot N^2 + b \cdot N + c를 나타낸다. N>10N > 10이면 99 다음 숫자로 ASCII 순서의 대문자 영문자를 쓴다(A = 10, B = 11, …\dots, Z = 35). 예를 들어 16진법의 F1은 15⋅16+115 \cdot 16 + 1을 나타내며, 십진법으로는 241241이다.

NN자리 NNN-수는 정확히 NN자리인 NN진법의 수 가운데, 일의 자리 숫자가 그 수에 숫자 1이 나타나는 횟수와 같고, 십의 자리 숫자가 숫자 2가 나타나는 횟수와 같으며, 이런 식으로 각 자리 숫자가 그 자리 번호에 해당하는 숫자의 출현 횟수와 같은 수이다. 가장 왼쪽 자리 숫자는 그 수에 들어 있는 0의 개수이다.

입력

텍스트 파일의 유일한 줄에 십진법 정수 NN(2≤N≤362 \le N \le 36)이 주어진다.

출력

NN자리 NNN-수를 모두 오름차순으로 텍스트 파일에 한 줄에 하나씩 출력한다. 그런 수가 없으면 파일의 유일한 줄에 EI OLE를 출력한다.

예제2

  1. 예제 1

    입력
    5
    
    예상 출력
    20021
    
  2. 예제 2

    입력
    2
    
    예상 출력
    EI OLE