Pagini recente » Cod sursa (job #1407063) | Cod sursa (job #1380635) | Cod sursa (job #2360687) | Cod sursa (job #373182) | Cod sursa (job #1481062)
#include <iostream>
#include <fstream>
using namespace std;
int a[18],n,k,x,ev,sw,i;
ifstream f("combinari.in");
ofstream g("combinari.out");
void init()
{
a[x]=0;
}
void succesor()
{
ev=0;
if(a[x]<n)
{
a[x]++;
ev=1;
}
}
void valid()
{
sw=1;
for(i=1;i<x;i++)
{
if(a[i]==a[x] || a[i]>a[x])
{
sw=0;
}
}
}
void tipar()
{
for(i=1;i<=k;i++)
{
g<<a[i]<<" ";
}
g<<"\n";
}
void bkt()
{
x=1;
init();
while(x>0)
{
do
{
succesor();
if(ev==1)
{
valid();
}
}
while(ev==1 && sw==0);
if(ev==1)
{
if(x==k)
{
tipar();
}
else
{
x++;
init();
}
}
else
{
x--;
}
}
}
int main()
{
f>>n>>k;
bkt();
return 0;
}