Cod sursa(job #1692347)

Utilizator PopoviciRobertPopovici Robert PopoviciRobert Data 20 aprilie 2016 18:45:37
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <cstdio>
#define MAXN 18
FILE*fi,*fout;
int vf[MAXN+1],v[MAXN];
void comb(int x,int n,int k){
    int i;
    if(k==x){
       for(i=0;i<k;i++)
         fprintf(fout,"%d " ,v[i]);
        fprintf(fout,"\n");
    }
    else{
       if(x==0)
          i=1;
       else
          i=v[x-1]+1;
       for(;i<=n;i++)
         if(vf[i]==0){
             v[x]=i;
             vf[i]=1;
             comb(x+1,n,k);
             vf[i]=0;
         }
    }
}
int main(){
    int n,k;
    fi=fopen("combinari.in" ,"r");
    fout=fopen("combinari.out" ,"w");
    fscanf(fi,"%d%d" ,&n,&k);
    comb(0,n,k);
    fclose(fi);
    fclose(fout);
    return 0;
}