Cod sursa(job #1697610)

Utilizator petrica333petrica petrica petrica333 Data 2 mai 2016 15:30:09
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.81 kb
#include<fstream>

using namespace std;

#define TRUE 1
#define FALSE 0

#define MAX 100

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

void afisare(int n, int x[])
{
	int i;

	for (i = 1; i <= n; i++)
		fout<<x[i]<<" ";
	fout<<'\n';
}

int condcontinuare(int n, int x[])
{
	if ((n > 1 && x[n] > x[n-1]) || (n == 1))
		return TRUE;
	else
        return FALSE;

}

int main()
{
	int n, m, k, gata;
	int x[MAX];

	fin>>n>>m;

	k = 1; x[k] = 0;
	while (k > 0)
    {
		gata = FALSE;
		while (x[k] + 1 <= n && gata == FALSE)
        {
			x[k] = x[k]+1;
			if (condcontinuare(k, x))
				gata = TRUE;
		}

		if (gata == TRUE)
			if (k == m)
				afisare(k, x);
			else
            {
				k = k + 1;
				x[k] = 0;
			}
		else
			k = k - 1;
	}

	return 0;
}