R01323
탐정의 암호 해독
레이팅
의견: 0
설명
탐정 준호는 암호화된 메시지를 발견했다. 메시지는 \(1\)부터 \(N\)까지의 정수를 한 번씩 사용한 순열인데, 특이하게도 인접한 두 수의 차이가 절대로 \(1\)이 아니다.
이러한 조건을 만족하는 순열을 사전 순서로 나열했을 때, \(K\)번째 순열을 구하여라. 그러한 순열이 \(K\)개 미만이면 \(-1\)을 출력한다.
제약
- \(1 \le N \le 8\)
- \(1 \le K \le 100\,000\)
입력 형식
첫째 줄에 수의 개수 \(N\)과 순서 \(K\)가 공백으로 구분되어 주어진다.
출력 형식
조건을 만족하는 \(K\)번째 순열을 공백으로 구분해 한 줄에 출력한다. 그러한 순열이 \(K\)개 미만이면 \(-1\)을 출력한다.
예제 1
입력
4 1
출력
2 4 1 3
설명
\(4\)개의 수 중 이웃한 수의 차가 \(1\)이 아닌 순열의 첫 번째(사전 순 최솟값)를 출력한다.
예제 2
입력
4 3
출력
-1
설명
\(4\)개의 수에 대한 유효 순열을 사전순으로 나열했을 때 세 번째를 출력한다.
힌트
막혔나요? 코인으로 단계별 힌트를 잠금 해제하세요 — 첫 힌트는 가벼운 방향 제시, 뒤로 갈수록 더 많이 알려 줍니다. 문제를 풀면 모든 힌트가 무료로 공개됩니다.
문제 정보
riseoj 작성
출처 Original
태그
평가 및 의견
탐정의 암호 해독
개별 의견
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
탐정의 암호 해독
게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다.
로그인하고 제출하기