Pagini recente » Cod sursa (job #979087) | Cod sursa (job #886687) | Cod sursa (job #1777804) | Cod sursa (job #1009589) | Cod sursa (job #352807)
Cod sursa(job #352807)
#include<fstream.h>
int v[20],n,k,j;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int succesor(int i)
{
if(v[i]<n){
v[i]=v[i]++;
return 1;
}
return 0;
}
int valid(int i)
{
for(j=1;j<i;j++)if(v[j]>=v[i])return 0;
return 1;
}
void tipar()
{
for(j=1;j<=k;j++)fout<<v[j]<<" ";
fout<<"\n";
}
void bkt()
{
int i=1;
v[i]=0;
while(i){
if(succesor(i)){
if(valid(i))if(i==k)tipar();
else {
i++;
v[i]=0;
}
}
else i--;
}
}
int main()
{
fin>>n>>k;
bkt();
fin.close();
fout.close();
return 0;
}