Programming/Baekjoon

백준 15650 N과 M [c++]

fishersheep 2022. 2. 14. 23:43
반응형
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <stack>

using namespace std;

#define MAX 9	

int n, m;
bool visited[MAX];	
vector<int>result;	

void dfs(int x, int c)
{
	if (c == m)	
	{
		for (int i = 0; i < m; i++)
		{
			cout << result[i]<< " ";
		}
		cout << '\n';
	}
	else
	{
		for (int i = x; i <= n; i++)	
		{
			if (visited[i])continue;	
			result.push_back(i);	
			visited[i] = true;	
			dfs(i + 1, c + 1);	
			visited[i] = false;
			result.pop_back();

			
		}

	}
}

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	cin >> n >> m;	

	dfs(1,0);

	return 0;
}
반응형

'Programming > Baekjoon' 카테고리의 다른 글

백준 1697 숨바꼭질 [c++]  (0) 2022.02.16
백준 15651 N과M(3) [c++]  (0) 2022.02.15
백준 14226 이모티콘 [c++]  (0) 2022.02.09
백준 17086 아기상어2 [c++]  (0) 2022.02.09
백준 9613 GCD합 [c++]  (0) 2022.02.08