Cod sursa(job #307647)

Utilizator rares192Preda Rares Mihai rares192 Data 24 aprilie 2009 15:54:34
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<fstream.h>
#include<stdio.h>



int a[23], n, x;

void back(int k);



FILE *f1=freopen("combinari.in", "r", stdin);
FILE *f2=freopen("combinari.out", "w", stdout);

int main()
{

fscanf(f1, "%d", &n);
fscanf(f1, "%d", &x);

back(0);
return 0;
}


void back(int k)
{

int i, j, ok;

if(k==x)
{
for(i=0; i<x; i++)
{
fprintf(f2, "%d", a[i]);
fprintf(f2, " ");
}
fprintf(f2, "\n");
}

else
   {

   for(i=1; i<=n; i++)
	{
	ok=1;
	for(j=0; j<=k-1 && ok; j++)
		{
		if(a[j]==i || a[j]>i)
		ok=0;
		else
		ok=1;
		}


		if(ok)
		{
		a[k]=i;
		back(k+1);
		}


	}
	a[k]=0;
   }
}