Cod sursa(job #690215)

Utilizator michael9ufoStanescu Mihai michael9ufo Data 25 februarie 2012 13:27:41
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>

using namespace std;

short OK[18], NO[18];

void comb(short z, short N, short K)
{
	short i;
	
	if(z - 1 == K)
	{
		
		for(i=1;i<=K;++i)
			printf("%hd ", OK[i]);
		
		printf("\n");
		
	}
	else
		for(i=1;i<=N;++i)
			if(!NO[i] && OK[z-1] < i)
			{
				OK[z] = i;
				
				NO[i] = 1;
				
				comb(z + 1, N, K);
				
				NO[i] = 0;
				
			}
}

int main()
{

	short N, K;
	
	freopen("combinari.in", "r", stdin);
	freopen("combinari.out", "w", stdout);

	scanf("%hd %hd", &N, &K);

	fclose(stdin);
	
	comb(1, N, K);
	
	fclose(stdout);
	
	return 0;

}