Algorithm ๐ง๐ป๐ป/๋ฐฑ์ค(BOJ)
[๋ฐฑ์ค,c++] 15652๋ฒ - N๊ณผ M (4)
dkswnkk
2021. 12. 4. 18:56
๋ฌธ์
15652๋ฒ: N๊ณผ M (4)
ํ ์ค์ ํ๋์ฉ ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ์์ด์ ์ถ๋ ฅํ๋ค. ์ค๋ณต๋๋ ์์ด์ ์ฌ๋ฌ ๋ฒ ์ถ๋ ฅํ๋ฉด ์๋๋ฉฐ, ๊ฐ ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํด์ผ ํ๋ค. ์์ด์ ์ฌ์ ์์ผ๋ก ์ฆ๊ฐํ๋ ์์๋ก ์ถ๋ ฅํด
www.acmicpc.net
์ฝ๋
#include <iostream>
#include <vector>
#define max 9
using namespace std;
int N, M;
int arr[max];
bool visited[max];
void dfs(int num, int start) {
if (start == M) {
for (int i = 0; i < M; i++) {
cout << arr[i] << ' ';
}
cout << "\n";
}
else {
for (int i = num; i <= N; i++) {
visited[i] = true;
arr[start] = i;
dfs(i, start + 1);
visited[i] = false;
}
}
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
cin >> N >> M;
dfs(1, 0);
}