Pagini recente » Cod sursa (job #611086) | Cod sursa (job #2442386) | Cod sursa (job #2265121) | Cod sursa (job #2428471) | Cod sursa (job #2567282)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int n,c;
int viz[25];
int sol[25];
void Afisare(int k)
{
int i,j;
for(i = 1; i<=k; ++i)
fout<<sol[i]<<" ";
fout<<"\n";
}
bool Valid(int k)
{
for(int i = 2; i<=k; ++i)
if(sol[i] < sol[i-1])
return false;
return true;
}
void Back(int k)
{
for(int i = k; i <=n; ++i)
if(viz[i] == 0)
{
viz[i] = 1;
sol[k] = i;
if(Valid(k))
{
if(k == c)
Afisare(k);
else Back(k+1);
}
viz[i] = 0;
}
}
int main()
{
fin>>n>>c;
Back(1);
return 0;
}