Cod sursa(job #260252)
Utilizator | Data | 16 februarie 2009 20:53:11 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include<stdio.h>
int v[30],viz[30],i,j,k,l,n;
FILE *g=fopen("combinari.out","w");
FILE *f=fopen("combinari.in","r");
void bac(int m)
{if(m==k)
{for(i=1;i<=k;i++)
fprintf(g,"%d ",v[i]);
fprintf(g,"%c",'\n');
return ;
}
int j;
for(j=v[m]+1;j<=n;j++)
if(!viz[j])
{viz[j]=1;
v[m+1]=j;
bac(m+1);
viz[j]=0;
}
}
int main(){
fscanf(f,"%d%d",&n,&k);
bac(0);
fclose(g);
fclose(f);
return 0;}