Cod sursa(job #1254771)

Utilizator alexb97Alexandru Buhai alexb97 Data 3 noiembrie 2014 14:22:28
Problema Combinari Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
using namespace std;

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

int n, p, x[9];
bool s[9];

void Comb(int k);
void Write(int k);

int main()
{
	is >> n >> p;
	Comb(1);
	is.close();
	os.close();
	return 0;
}

void Comb(int k)
{
	if(k > p)
	{
		Write(k-1);
		return;
	}
	for(int i = x[k-1] + 1; i <= n; ++i)
	{
		x[k] = i;
		if(!s[i])
		{
			s[i] = true;
			Comb(k+1);
			s[i] = false;
		}
	}
}

void Write(int k)
{
	for(int i =1; i <= k; ++i)
		os << x[i] << ' ';
	os << '\n';
	return ;
}