-
15654) N과 M (5) c++백준코딩일기 2020. 12. 11. 08:47
문제 ) www.acmicpc.net/problem/15654
15654번: N과 M (5)
N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열
www.acmicpc.net
풀이 )
코드 )
#include <iostream> #include <vector> #include <algorithm> using namespace std; int N, M; int arr[9]; vector<int> v; bool visited[9]; void func(int cnt) { if (cnt == M) { for (int i = 0; i < M; i++) cout << arr[i] << " "; cout << "\n"; } else { for (int i = 0; i < N; i++) { if(!visited[i]){ arr[cnt] = v[i]; visited[i] = 1; func(cnt+1); visited[i] = 0; } } } } int main(void) { ios::sync_with_stdio(0); cin.tie(0); cin >> N >> M; v.resize(N); for(int i=0; i<N; i++){ cin >> v[i]; } sort(v.begin(), v.end()); func(0); }
'백준코딩일기' 카테고리의 다른 글
15656) N과 M (7) c++ (0) 2020.12.11 15655) N과 M (6) c++ (0) 2020.12.11 15652) N과 M (4) c++ (0) 2020.12.10 15651) N과 M (3) c++ (0) 2020.12.10 15650) N과 M (2) c++ (0) 2020.12.10