https://www.acmicpc.net/problem/15649
"""
1. 아이디어
2. 시간복잡도
"""
# ① 재귀를 이용한 백트래킹 풀이
from sys import stdin
input = stdin.readline
n, m = map(int, input().split())
res = []
visited = [False] * (n+1)
def btr(dep):
if dep == m:
print(*res)
return
for i in range(1, n+1):
if not visited[i]:
visited[i] = True
res.append(i)
btr(dep+1)
visited[i] = False
res.pop()
btr(0)
# ② 순열 라이브러리를 이용한 풀이
from itertools import permutations
from sys import stdin
input = stdin.readline
n, m = map(int, input().split())
nums = [ x for x in range(1, n+1) ]
p = list(permutations(nums, m)) # 순열 - nums 리스트의 숫자 중에서 m개를 중복없이 뽑는 경우
for num in p:
print(*num)