Cod sursa(job #642291)

Utilizator noobakafloFlorin eu noobakaflo Data 30 noiembrie 2011 21:26:27
Problema Combinari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<iostream>
#include<fstream>
using namespace std;
fstream f("combinari.in",ios::in);
fstream g("combinari.out",ios::out);
int n,p,st[100];


void tipar()
{
	int i;
	for(i=0; i<p; i++)
		g<<st[i]<<" ";
	g<<"\n";
}

void init(int k)
{
	st[k]=0;
}

int succesor(int k)
{
	if(st[k]<n)
	{
		st[k]++;
		return 1;
	}
	else
		return 0;
}

int valid(int k)
{
	if(k>0)
        if(st[k-1]>st[k])
			return 0;
		
	return 1;
}

void back(int k)
{
	if(k==n)
		tipar();
	else
	{
		init(k);
		while(succesor(k))
			if(valid(k))
				back(k+1);
	}
}

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