Cod sursa(job #2038261)

Utilizator andreicadarCadar Andrei andreicadar Data 13 octombrie 2017 15:55:59
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("combinari.in");
ofstream g("combinari.out");

int n,a,v[19];
void Read()
{
    f>>n>>a;
}
bool valid(int k)
{
    int i;
    for(i=1;i<k;i++)
    {
        if(v[i]==v[k] || v[i]>v[i+1])
            return 0;
    }
        return 1;

}

bool solutie (int k)
{
    if(k==a)
        return 1;
    else
        return 0;
}

void afisare(int k)
{
    int i;
    for(i=1;i<=k;i++)
        g<<v[i]<<" ";
    g<<'\n';
}

void BK(int k)
{
    int i;
    for(i=1;i<=n;i++)
    {
        v[k]=i;
        if(valid(k))
        {
            if(solutie(k))
                afisare(k);
            else
                BK(k+1);
        }
    }
}
void Manager()
{
    Read();
    BK(1);
}
int main()
{
Manager();
}