dfs랑 뭐가 다른거지
그게 그건가
#include <iostream>
#include <vector>
using namespace std;
int N, M;
int visit[9];
vector<int> v;
void solution(int lev) {
if (lev == M) {
for (int i = 0; i < v.size(); i++) cout << v[i] << " ";
cout << "\n";
return;
}
for (int i = 1; i <= N; i++) {
if (visit[i]) continue;
visit[i] = 1;
v.push_back(i);
solution(lev + 1);
visit[i] = 0;
v.pop_back();
}
}
int main() {
cin >> N >> M;
solution(0);
return 0;
}
array에 1부터 N까지 담았다가 i로 돌면 되니까 필요가 없어져서 제거.