Cod sursa(job #1681545)

Utilizator medicinedoctoralexandru medicinedoctor Data 9 aprilie 2016 16:03:40
Problema Combinari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
using namespace std;

short int n,k,c[20];

void lire()
{
	ifstream f("combinari.in");
	f >> n >> k ;
	f.close();
}

void pl(short int x)
{
	c[x]++;
	if (c[x]>(n-k+x+1)) { pl(x-1); c[x]=c[x-1]+1; }
}

void ecrire()
{
	ofstream f("combinari.out");
	if (n==k) 
	{
		for (int i=1; i<=n; i++)
			f << i << ' ';
	} else {
	while (c[1]!=n-k+1)
	{
		pl(k); if (c[k]!=(n+1)) {
		for (short int i=1; i<=k; i++)
			f << c[i] << ' ';
		f << endl; }
	} }
	f.close();
}

int main()
{
	lire();
	for (int i=1; i<=k-1; i++)
		c[i]=i;
	c[k]=k-1;
	ecrire();
	return 0;
}