Cod sursa(job #154548)
Utilizator | Bozianu Ana anna_bozianu | Data | 11 martie 2008 11:56:41 |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.69 kb |
#include<stdio.h>
int n,k,x[20],nr,j;
void pune(int i);
FILE *f=fopen("combinari.in","r"),
*g=fopen("combinari.out","w");
int main()
{ fscanf(f,"%d%d",&n,&k);
pune(1);
fcloseall();
return 0;
}
void pune(int i)
{ if(nr<k){ nr++; x[i]=1;
if(i==n){ for(j=1;j<=n;j++)if(x[j]) fprintf(g,"%d ",j);
fprintf(g,"\n");
}
else pune(i+1);
nr--; x[i]=0;
}
if(i<=n-k+nr){ if(i==n){ for(j=1;j<=n;j++)if(x[j]) fprintf(g,"%d ",j);
fprintf(g,"\n");
}
else pune(i+1);
}
}