Cod sursa(job #786279)

Utilizator icb_mnStf Cic icb_mn Data 10 septembrie 2012 21:02:55
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<fstream>

using namespace std;

ifstream f("combinari.in");
ofstream g("combinari.out");

#define NMAX 17

int n,m,x[NMAX + 1];

inline int cond(int k)
{
	for(int i = 1; i < k; ++i)
		if(x[i] == x[k] || x[i] > x[i + 1])
			return 0;
	return 1;
}

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

inline int back(int k)
{
	int i;
	if(k > m)
		afis();
	else
	{
		for(i = 1; i <= n; ++i)
		{
			x[k] = i;
			if(cond(k))
				back(k + 1);
		}
	}
}

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