Cod sursa(job #1869206)

Utilizator flibiaVisanu Cristian flibia Data 5 februarie 2017 17:34:43
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <bits/stdc++.h>

using namespace std;

ifstream in("combinari.in");
ofstream out("combinari.out");

int n, x, s[21];

bool valid(int k){
	for(int i = 1; i < k; i++) if(s[i] == s[k]) return 0;
	if(s[k] < s[k-1]) return 0;
	return 1;
}

void print(int k){
	for(int i = 1; i <= k; i++) out << s[i] << ' ';
	out << '\n';
}

bool sol(int k){
	return k == x;
}

void back(int k){
	int i;
	for(i = 1; i <= n; i++){
		s[k] = i;
		if(valid(k)){
			if(sol(k)) print(k);
			else back(k+1);
		}
	}
}

int main(){
	in >> n >> x;
	back(1);
	return 0;
}