Cod sursa(job #914383)

Utilizator flemixFiru Denis flemix Data 14 martie 2013 08:31:39
Problema Combinari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include<stdio.h>
using namespace std;
FILE * f=fopen("combinari.in","r");
FILE * g=fopen("combinari.out","w");
int c[1000],k,n,nr=0;
void tipar()
{
    for(int i=1;i<=k;i++)
    {
        fprintf(g,"%d ",c[i]);
    }
    fprintf(g,"\n");
    nr++;
}
void combin(int c[],int k,int pas)
{
    int i;
    if(pas==k+1) tipar();
    else
    {
        if(pas==1)
        {
            for(i=1;i<=n;i++)
            {
                c[pas]=i;
                combin(c,k,pas+1);
            }
        }
        else
        {
            for(i=c[pas-1]+1;i<=n;i++)
            {
                c[pas]=i;
                combin(c,k,pas+1);
            }
        }
    }
}
int main()
{
    fscanf(f,"%d %d",&n,&k);
    combin(c,k,1);
    fprintf(g,"%d",nr);
    return 0;
}