반응형
A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기)
중복으로 숫자를 선택 가능하고, 순서도 의미가 있는 중복 순열 문제이다.
즉, visit배열로 숫자를 현재 선택했는지 관리할 필요가 없다.
따라서 다음 Level에서도 모든 숫자를 선택할 수 있도록 i = 1 ~ N으로 하면 된다.
#include <stdio.h>
int N, M;
int list[10];
void outputList()
{
for (int i = 0; i < M;i++) printf("%d ", list[i]);
putchar('\n');
}
void DFS(int L)
{
if (L == M)
{
outputList();
return;
}
for (int i = 1; i <= N;i++)
{
list[L] = i;
DFS(L + 1);
}
}
int main(void)
{
scanf("%d %d", &N, &M);
DFS(0);
return 0;
}
반응형
'알고리즘 > BAEKJOON' 카테고리의 다른 글
BOJ 15654 : N과 M (5) - 순열 permutation (0) | 2021.02.22 |
---|---|
BOJ 15652 : N과 M (4) - 중복 조합 combinations with repetition (0) | 2021.02.21 |
BOJ 15650 : N과 M (2) - 조합 combination (0) | 2021.02.20 |
BOJ 15649 : N과 M (1) - 순열 permutation (0) | 2021.02.20 |
BOJ 11728 : 배열 합치기 (0) | 2021.02.17 |
댓글