Cod sursa(job #430793)
Utilizator | Moise Razvan Bunicool | Data | 31 martie 2010 12:54:20 |
---|---|---|---|
Problema | Combinari | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include<cstdio>
FILE *f=fopen("combinari.in","r"), *g=fopen("combinari.out","w");
int n,k,stiva[100];
bool ok[100];
void afisare();
void back(int x)
{
if(x==k+1)
{
afisare();
return;
}
for(int i=1;i<=n;i++)
{
if(ok[i])
continue;
stiva[x]=i;
ok[i]=true;
back(x+1);
ok[i]=false;
}
}
void afisare()
{
for(int i=1;i<=k;i++)
fprintf(g,"%d ",stiva[i]);
fprintf(g,"\n");
}
int main()
{
fscanf(f,"%d %d",&n,&k);
back(1);
}