Cod sursa(job #1231339)

Utilizator afkidStancioiu Nicu Razvan afkid Data 20 septembrie 2014 12:31:40
Problema Combinari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <iostream>
#include <cstdio>

using namespace std;

int n,k,combinare[20];


void backtrack(int i,int combinare[])
{
    if(i==k+1)
    {
        for(int i=1;i<=k;i++)
            printf("%d ",combinare[i]);
         printf("\n");
        return ;
    }
    for(int t=1;t<=n;++t)
    {
        bool valid=true;
        for(int j=1;j<i;j++)
            if(combinare[j]>=t)
                valid=false;
        if(valid=true)
        {
            combinare[i]=t;
            backtrack(i+1,combinare);
        }
    }
}

int main()
{
    freopen("combinari.in","r",stdin);
    freopen("combinari.out","w",stdout);
    scanf("%d %d",&n,&k);
    for(int i=1;i<=k;i++)
        combinare[i]=i;
    backtrack(0,combinare);
    return 0;
}