Pagini recente » Cod sursa (job #2798234) | Cod sursa (job #2630254) | Cod sursa (job #2376319) | Cod sursa (job #2771656) | Cod sursa (job #2457204)
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
#define ARRAY_MAX 100005
int N, K;
int arr[ARRAY_MAX];
bool check[ARRAY_MAX];
void backTrack(int start, int N, int K) {
if (start - 1 == K) {
for (int i = 1; i <= K; i++)
fout << arr[i] << " ";
fout << "\n";
}
else {
for (int i = 1; i <= N; i++)
if (!check[i] && arr[start - 1] < i) {
arr[start] = i;
check[i] = true;
backTrack(start + 1, N, K);
check[i] = false;
}
}
}
int main() {
fin >> N >> K;
backTrack(1, N, K);
}