Pagini recente » Cod sursa (job #2059695) | Cod sursa (job #1926231) | Cod sursa (job #552557) | Cod sursa (job #1586837) | Cod sursa (job #1231339)
#include <iostream>
#include <cstdio>
using namespace std;
int n,k,combinare[20];
void backtrack(int i,int combinare[])
{
if(i==k+1)
{
for(int i=1;i<=k;i++)
printf("%d ",combinare[i]);
printf("\n");
return ;
}
for(int t=1;t<=n;++t)
{
bool valid=true;
for(int j=1;j<i;j++)
if(combinare[j]>=t)
valid=false;
if(valid=true)
{
combinare[i]=t;
backtrack(i+1,combinare);
}
}
}
int main()
{
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d %d",&n,&k);
for(int i=1;i<=k;i++)
combinare[i]=i;
backtrack(0,combinare);
return 0;
}