문제
https://www.acmicpc.net/problem/15650
풀이
[DFS]
코드
#include <iostream>
#include <vector>
using namespace std;
int N, M;
void dfs(int start, vector<int> arr)
{
if (arr.size() == M)
{
for (int i = 0; i < M; i++)
{ cout << arr[i] << " "; }
cout << "\n";
return;
}
for (int i = start; i <= N; i++)
{
arr.push_back(i);
dfs(i + 1, arr);
arr.pop_back();
}
}
int main()
{
cin >> N >> M;
vector<int>arr;
dfs(1, arr);
return 0;
}
'개발 > 백준' 카테고리의 다른 글
[백준] 15654. N과 M (5) (0) | 2025.09.07 |
---|---|
[백준] 15652. N과 M (4) (0) | 2025.09.07 |
[백준] 1389. 케빈 베이컨의 6단계 법칙 (C++) (0) | 2025.07.06 |
[백준] 30804. 과일 탕후루 (C++) (0) | 2025.07.06 |
[백준] 2630. 색종이 만들기 (C++) (0) | 2025.06.30 |