문제 [15651]
문제 설명
자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.
- 1부터 N까지 자연수 중에서 M개를 고른 수열
- 같은 수를 여러 번 골라도 된다.
입력
첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 7)
출력
한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다.
수열은 사전 순으로 증가하는 순서로 출력해야 한다.
-
예제 입력 1
3 1 -
예제 출력 1
1
2
3 -
예제 입력 1
4 2 -
예제 출력 1
1 1
1 2
1 3
1 4
2 1
2 2
2 3
2 4
3 1
3 2
3 3
3 4
4 1
4 2
4 3
4 4 -
예제 입력 1
3 3 -
예제 출력 1
1 1
1 2
1 3
1 4
2 1
2 2
2 3
2 4
3 1
3 2
3 3
3 4
4 1
4 2
4 3
4 4
문제 해석
이번 문제는 기존의 사용 여부가 필요가 없다. 그래서 True,False 기능만 삭제하고 append와 pop기능만 사용한다. 이번 문제는 간단하니 바로 코딩을 공개하고 끝내겠습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
N,M = map(int,input().split())
List = []
for i in range(N):
List.append(i+1)
Answer = []
def bubun(idx):
global Answer
if idx == M:
print(*Answer)
else:
for i in range(N):
Answer.append(List[i])
bubun(idx+1)
Answer.pop()
bubun(0)
|
cs |
출처
https://www.acmicpc.net/problem/15651
'백준 > N과 M' 카테고리의 다른 글
N과 M -(6) [문제번호 : 15655] (Python 파이썬 풀이) (0) | 2020.02.26 |
---|---|
N과 M -(5) [문제번호 : 15654] (Python 파이썬 풀이) (0) | 2020.02.26 |
N과 M -(4) [문제번호 : 15652] (Python 파이썬 풀이) (0) | 2020.02.25 |
N과 M -(2) [문제번호 : 15650] (Python 파이썬 풀이) (0) | 2020.02.25 |
N과 M -(1) [문제번호 : 15649] (Python 파이썬 풀이) (0) | 2020.02.25 |