Pagini recente » Cod sursa (job #1651949) | Cod sursa (job #459746) | Cod sursa (job #1617468) | Cod sursa (job #669848) | Cod sursa (job #1953852)
#include <cstdio>
using namespace std;
int v[19],u[19],n,k;
int valid (int p)
{
int j;
if (u[v[p]]==1)
{
return 0;
}
for (j=1; j<=n; j++)
{
if (u[j]==1&&j>v[p])
{
return 0;
}
}
return 1;
}
void bkt (int p)
{
int i;
if (p==k+1)
{
for (i=1; i<=p-1; i++)
{
printf ("%d ",v[i]);
}
printf ("\n");
}
else
{
for (i=1; i<=n; i++)
{
v[p]=i;
if (valid(p)==1)
{
u[i]=1;
bkt(p+1);
u[i]=0;
}
}
}
}
int main()
{
freopen ("combinari.in","r",stdin);
freopen ("combinari.out","w",stdout);
scanf ("%d %d",&n,&k);
bkt(1);
return 0;
}