알고리즘
[백준]N과M(4)
kyeongjun-dev
2020. 5. 18. 00:21
#include <bits/stdc++.h>
using namespace std;
int n, m;
void dfs(int arr[], int k) {//현재까지 k개를 선택함
if (k == m) {//k가 0부터 2까지 세 개를 다 고르면 출력
for (int i = 0; i < m; i++) {
cout << arr[i] + 1 << ' ';
}
cout << '\n';
return;
}
int i = 0;
if (k > 0)
i = arr[k - 1];
for (; i < n; i++) {
arr[k] = i;
dfs(arr, k + 1);
}
}
int main() {
cin >> n >> m;
int *arr = new int[m]();
int k=0;
dfs(arr, k);
return 0;
}
꾸준해지자... 까먹기 전에 복습하자...