Cod sursa(job #672245)

Utilizator nutipasa16Macovei Claudiu nutipasa16 Data 1 februarie 2012 19:39:02
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>
using namespace std;
ifstream f("combinari.in");
ofstream g("combinari.out");
int x[19],viz[19];
void write(int nr)
	{for(register int i=1;i<=nr;i++)g<<x[i]<<" ";
	g<<'\n';
	}
void back(int k,int len,int maxi)
	{if(k-1 == maxi) write(maxi);
	 else {for(int  i = 1; i <= len; i++)
		   if(!viz[i] && x[k-1] < i)  //ne asiguram ca generam solutiile crescatoare si unice
			{x[k] = i;
			viz[i] = 1; //o folosim
			back(k+1,len,maxi); //trecem la pasul urmator
			viz[i] = 0;   //o eliberam
			}
		}
}
int main()
{   int n,k;
    f>>n>>k;
    back(1,n,k);
    return 0;
}