Cod sursa(job #690687)

Utilizator bocacristiBoca Nelu Cristian bocacristi Data 25 februarie 2012 20:08:17
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
using namespace std;

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

int n, m;
int s[20], uz[20];

void back(int k);
void afis();

int main()
{
	fin >> n >> m;
	back(1);
	
	fin.close();
	fout.close();
	return 0;
}

void back(int k)
{
	if ( k > m )
		afis();
	else
		for ( int i = 1; i <= n; ++i )
		{
			if ( !uz[i] && s[k-1] <= i)
			{
				uz[i] = 1;
				s[k] = i;
				back(k+1);
				uz[i] = 0;
			}
		}
		
	
}

void afis()
{
	for ( int i = 1; i <= m; ++i )
		fout << s[i] << ' ';
	fout << '\n';
}