Cod sursa(job #1424617)

Utilizator UAIC_HreapcaVlasNegrusUAIC Hreapca Vlas Negrus UAIC_HreapcaVlasNegrus Data 25 aprilie 2015 01:15:02
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <iostream>
#include <deque>
#include <vector>
#include <cstring>
#include <bitset>
#include <algorithm>
#define INF 1000010
#define uint unsigned int
#define ll long long
#define step(x) (x&(-x))
using namespace std;

int A[20],viz[20],N,K;

void back(int pos)
{
    if(pos == K + 1)
    {
        for(int i=1;i<=K;i++)
            printf("%d ",A[i]);
        printf("\n");
    }
    else
    {
        for(int i=A[pos-1] + 1;i<=N;i++)
        {
            if(!viz[i])
            {
                A[pos] = i;
                viz[i] = 1;
                back(pos+1);
                viz[i] = 0;
            }
        }
    }
}


int main()
{
    freopen("combinari.in","r",stdin);
    freopen("combinari.out","w",stdout);
    scanf("%d%d", &N, &K);
    back(1);
}