15649
-
15649) N과 M (1) c++백준코딩일기 2020. 12. 10. 13:52
문제 ) www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 풀이 ) 조합의 개수를 구하는 문제로 dfs 를 활용하여 풀 수 있다. N까지의 숫자를 인덱스로 가지는 bool 형 배열 visited 를 이용해서 해당 숫자를 뽑았는지 유무를 저장한다. 숫자를 앞에서부터 한개씩 뽑아가면서 visited 가 M개만큼 true 가 되면 출력해주는 재귀함수를 사용한다. 코드 ) #include using namespace std; int N, M; int ans[9]; ..