Pagini recente » Cod sursa (job #2681402) | Cod sursa (job #597700) | Cod sursa (job #1797256) | Cod sursa (job #3285287) | Cod sursa (job #393055)
Cod sursa(job #393055)
#include<fstream.h>
int v[20],n,k,j;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
inline int succesor(int i)
{
if(v[i]<n){
v[i]=v[i]++;
return 1;
}
return 0;
}
inline int valid(int i)
{
for(j=1;j<i;j++)if(v[j]>=v[i])return 0;
return 1;
}
inline 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]=v[i-1];
}
}
else i--;
}
}
int main()
{
fin>>n>>k;
bkt();
fin.close();
fout.close();
return 0;
}