안녕 세상아,

[c++/백준] 15651 N과 M (3) 본문

백준

[c++/백준] 15651 N과 M (3)

돈 많은 백수가 되고싶다 2023. 5. 10. 16:10

https://www.acmicpc.net/problem/15651

 

15651번: N과 M (3)

한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해

www.acmicpc.net

N과 M(1)을 조금만 변형하면 쉽게 풀린다.

#include <iostream>
using namespace std;

int n, m;
int arr[10];

void dfs(int depth) {
	if (depth == m) {
		for (int i = 0; i < m; i++) {
			cout << arr[i] << " ";
		}
		cout << '\n';
		return;
	}
	for (int i = 1; i <= n; i++) {
		arr[depth] = i;
		dfs(depth + 1);
	}
}

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

	cin >> n >> m;

	dfs(0);
}

 

'백준' 카테고리의 다른 글

[c++/백준] 11726 2*n 타일링  (0) 2023.05.10
[c++/백준] 13305 주유소  (0) 2023.05.10
[c++/백준] 1021 회전하는 큐  (0) 2023.05.09
[c++/백준] 11659 구간 합 구하기 4  (1) 2023.05.09
[c++/백준] 2108 통계학  (1) 2023.05.08