프로그램 명: abnormal
제한시간: 1 초

싱조는 변태코더다. 그는 어느날 어떤 c코드를 보고 신기해 하였다.

printf("%c", 3["abcdef"]); // 출력 결과 : d

어떻게 이런결과가 나오나 궁금한 싱조는 다음과 같은 사실을 알아내었다. a[b] = *(a+b) = *(b+a) = b[a]

이것을 알아낸 싱조는 지금까지 짠 코드를 다음과 같이 이상하게 바꿔보기로 하였다.

return d[b[a][c]]; // return a[b][c][d];

높은 차원의 배열을 이렇게 이상한 형태로 만드는것은 힘든일이다. 그래서 싱조는 n차원 배열 a의 형태중 알파벳순으로 m번째 형태를 찾으려 한다.

입력

여러개의 입력이 주어집니다.

각 입력은 자연수 n과 m이 주어집니다. (1<=n<=25, m은 n차원배열의 하나의 원소를 표현하는 모든 형태의 개수 이하인게 보장된다) 입력의 끝은 0입니다.

출력

n차원 배열 a의 원소 a[b][c][d][e]...[(n+1)번째 알파벳] 을 접근할수 있는 모든 형태중 대괄호를 생략한 알파벳순서로 m번째 형태를 출력하시오

입출력 예

입력

2 2
3 7
5 32
3 5
0

출력

b[a][c]
d[c[a[b]]]
f[e[d[c[b[a]]]]]
d[a[b][c]]

입출력 설명

테스트 케이스 n=2, m=2에서 2차원배열 a[b][c]를 표현하는 형태를 알파벳 순서로 나열하면 a[b][c], b[a][c], c[a[b]], c[b[a]] 이다. 이중에서 2번째는 b[a][c]이다.
출처:q5123444

[질/답] [제출 현황] [푼 후(3)]
[ 채 점 ] [홈으로]  [뒤 로]