Pagini recente » Cod sursa (job #2201896) | Arhiva de probleme | Cod sursa (job #1518940) | Cod sursa (job #2171540) | Cod sursa (job #604893)
Cod sursa(job #604893)
#include<fstream.h>
int i,n,x[100000],p;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
void citeste()
{fin>>n>>p;
}
void scrie_sol()
{for(i=1;i<=p;i++)
fout<<x[i]<<" ";
fout<<"\n";}
int valid(int k)
{int ok;
ok=1;
for(i=1;i<k;i++)
{if(x[i]==x[k])
return 0;
if(x[i]>x[i+1])
return 0;}
return ok;}
void back()
{int k;
k=1; x[k]=0;
while(k>0)
if(x[k]<n)
{x[k]++;
if(valid(k))
if(k==p)
scrie_sol();
else
{k++;
x[k]=0;}
}
else
k--;}
int main()
{
citeste();
back();
fin.close();
fout.close();
return 0;}