C언어/문제풀다 하나씩
다른 블로그 참고한 조합 재귀방법 0자리를 비우고 for 문 안 씀
mcdn
2020. 5. 27. 20:45
반응형
#include <iostream>
#include <string>
using namespace std;
int n, k;
int arr[6];
int choice[6];
int cnt;
void comb(int number, int idx) {
if (idx > k) {
for (int i = 1; i <= k;i++) {
cout << choice[i]<<" ";
}cout << endl;
return;
}
if (number > n) {
return;
}
choice[idx] = arr[number];
comb(number, idx + 1);
comb(number + 1, idx );
/*
순열
comb(number +1, idx +1);
comb(number + 1, idx);
*/
}
int main() {
cin >> n >> k;
for (int i = 1; i <= n;i++) {
cin >> arr[i];
}
comb(1, 1);
return 0;
}
반응형