Duyệt sinh các chỉnh hợp 1
Point: 100.0
Time limit: 1.5s
Memory limit: 98 M
Input:
stdin
Output:
stdout
Author:
Problem type
Phương pháp: Duyệt hoán vị
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text
Theo định nghĩa toán học, chỉnh hợp chập \(k\) của \(n\) phần tử là một bộ sắp thứ tự gồm \(k\) phần tử khác nhau của tập hợp gồm \(n\) phần tử. Ví dụ cho \(X = (1,2,3)\) thì các chỉnh hợp chập \(2\) của \(X\) là \((1,2),(1,3),(2,1), (2,3), (3,1), (3,2)\).
Với bài tập này bạn hãy liệt kê các chỉnh chập \(k\) của \(n\) phần tử \(X = (1,2,...,n)\).
Dữ liệu vào Specification
- Một dòng gồm \(k\) và \(n (1 ≤ k ≤ n ≤ 10)\)
Dữ liệu ra Specification
- Mỗi dòng in một chỉnh hợp, các chỉnh hợp in theo thứ tự từ điển.
Sample Input
2 3
Sample Output
1 2
1 3
2 1
2 3
3 1
3 2