Pagini recente » Cod sursa (job #919231) | Cod sursa (job #1459392) | Cod sursa (job #3225454) | Cod sursa (job #1011092) | Cod sursa (job #1467365)
#include <fstream>
using namespace std;
ifstream in("combinari.in");
ofstream out("combinari.out");
int n,k;
int v[20];
int verificare(int nivel)
{
bool ok=0;
for(int i=1; i<nivel; i++)
{
if(v[i]<=v[nivel] && v[i]!=v[nivel]) ok=0;
else
{
ok=1;
break;
}
}
if(ok==0) return 0;
return 1;
}
void afisare()
{
for(int i=1; i<=k; i++) out<<v[i]<<" ";
out<<'\n';
}
void btk (int nivel)
{
for(int i=1; i<=n; i++)
{
v[nivel]=i;
if(verificare(nivel)==0)
{
if((nivel+1)>k)
{
afisare();
}
else
{
btk(nivel+1);
}
}
}
}
int main()
{
in>>n>>k;
btk(1);
in.close();
out.close();
return 0;
}