Cod sursa(job #414105)

Utilizator lunat1cHobinca Bogdan lunat1c Data 9 martie 2010 18:41:28
Problema Combinari Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <cstdio>

int x[19],N,K;

void afis()
{
	for(int i=1;i<K;i++)
		for(int j=i+1;j<=K;j++)
			if(x[i]>=x[j])
				return;
	for(int i=1;i<=K;i++)
		printf("%d ", x[i]);
	printf("\n");
}
	

int main()
{
	freopen("combinari.in","r",stdin);
	freopen("combinari.out","w",stdout);
	scanf("%d%d",&N,&K);
	int i,a,c,s;
	a=1;
	x[a]=0;
	while(a>0)
	{
		do
		{
			if(x[a]<N)
			{
				x[a]++;
				c=1;
				s=1;
				
				for (i=1;i<a;i++)
					if(x[i]>=x[a])
						c=0;
			}
			else s=0;
		} while(s && !c);
		if (s)
			if(x[a]==N)
				afis();
			else x[++a]=0;
		else a--;
	}
	return 0;
}