학습
시험

순열

난이도
INTERMEDIATE

문제 설명

두 자연수 n과 m이 주어졌을 때, 1부터 n까지 숫자 중에서 다음 조건을 만족하는 m 개의 숫자 집합을 모두 반환하는 solution 함수를 작성하시오.

  • 하나의 집합은 A1,A2,⋯AmA_1, A_2, \cdots A_m 로 총 m개의 숫자로 이루어져 있습니다.
  • 1≤A1,A2,⋯ ,Am≤n1 \leq A_1, A_2, \cdots, A_m \leq n
  • 서로 다른 i, j에 대하여 AiA_i와 AjA_j는 서로 다릅니다.
  • 만약 위 조건을 만족하는 숫자 집합이 여러 개라면 각 배열의 사전 순으로 정렬하여 반환하시오.

제한 사항

  • n은 3 이상 10 이하의 자연수입니다.
  • m은 n 보다 작거나 같은 자연수입니다.

예시 테스트케이스 설명

테스트케이스 번호 n m return
1 4 2 [[1,2],[1,3],[1,4],[2,1],[2,3],[2,4],[3,1],[3,2],[3,4],[4,1],[4,2],[4,3]]
2 5 1 [[1],[2],[3],[4],[5]]
2 3 3 [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

1번 테스트케이스 설명

  • 4개의 자연수 1, 2, 3, 4 중 2개를 선택하여 나열하는 경우는 [1,2], [1,3], [1,4], [2,1], [2,3], [2,4], [3,1], [3,2], [3,4], [4,1], [4,2], [4,3] 총 12가지입니다.
  • 이를 사전 순 정렬하면 [[1,2],[1,3],[1,4],[2,1],[2,3],[2,4],[3,1],[3,2],[3,4],[4,1],[4,2],[4,3]] 입니다.

2번 테스트케이스 설명

  • 5개의 자연수 1, 2, 3, 4, 5 중 1개를 선택하여 나열하는 경우는 [1], [2], [3], [4], [5] 총 5가지입니다.
  • 이를 사전 순 정렬하면 [[1],[2],[3],[4],[5]] 입니다.

3번 테스트케이스 설명

  • 3개의 자연수 1, 2, 3 중 3개를 선택하여 나열하는 경우는 [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] 총 6가지입니다.
  • 이를 사전 순 정렬하면 [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 입니다