시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
1부터 N까지의 정수를 한 번씩 사용해 만든 순열은 모두 N!가지이다.
순열은 사전식 순서로 정렬한다. 앞에서부터 처음으로 다른 위치를 비교했을 때, 그 위치의 수가 더 작은 순열이 더 앞에 온다. 예를 들어 N=3이면 순서는 {1, 2, 3}, {1, 3, 2}, {2, 1, 3}, {2, 3, 1}, {3, 1, 2}, {3, 2, 1}이다.
N이 주어졌을 때 두 가지 작업 중 하나를 수행한다. 작업 1은 k번째 순열을 구하는 것이고, 작업 2는 주어진 순열이 몇 번째인지 구하는 것이다.
첫째 줄에 정수 N(1 <= N <= 20)이 주어진다.
둘째 줄의 첫 번째 정수는 작업 번호이다. 작업 번호가 1이면 정수 k(1 <= k <= N!)가 이어서 주어진다. 작업 번호가 2이면 1부터 N까지의 정수가 한 번씩 등장하는 순열 N개가 이어서 주어진다.
작업 번호가 1이면 k번째 순열을 이루는 N개의 정수를 공백으로 구분해 출력한다. 작업 번호가 2이면 주어진 순열이 사전식 순서에서 몇 번째인지 출력한다.