Cod sursa(job #1221731)

Utilizator o_micBianca Costin o_mic Data 21 august 2014 13:07:30
Problema Combinari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>

using namespace std;

int n, p, v[20];
fstream g("combinari.out", ios::out);

int valid(int k)
{
	int i, j;
	for(i = 0 ; i < k - 1 ; i++)
		for(j = i + 1 ; j < k ; j++)
			if(v[i] >= v[j])
				return 0;
	return 1;
}

int solutie(int k)
{
	return k == p;
}

void print(int k)
{
	int i;
	for(i = 0 ; i < k ; i++)
		g << v[i] << " ";
	g << '\n';
}

void BKT(int k)
{
	int i;
	for(i = 1 ; i <= n ; i++)
	{
		v[k] = i;
		if(valid(k))
		{
			if(solutie(k))
            {
                print(k);
                return;
            }
            else
                BKT(k + 1);
		}
	}
}

int main()
{
	fstream f("combinari.in", ios::in);
	f >> n >> p;
	BKT(0);
	return 0;
}