Cod sursa(job #1467365)

Utilizator tudor00Stoiean Tudor tudor00 Data 3 august 2015 12:25:18
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.88 kb
#include <fstream>

using namespace std;

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

int n,k;
int v[20];

int verificare(int nivel)
{
    bool ok=0;
    for(int i=1; i<nivel; i++)
    {
        if(v[i]<=v[nivel] && v[i]!=v[nivel]) ok=0;
        else
        {
            ok=1;
            break;
        }
    }
    if(ok==0) return 0;
    return 1;

}

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

void btk (int nivel)
{
    for(int i=1; i<=n; i++)
    {
        v[nivel]=i;
        if(verificare(nivel)==0)
        {
            if((nivel+1)>k)
            {
                afisare();
            }
            else
            {
                btk(nivel+1);
            }
        }
    }
}

int main()
{
    in>>n>>k;
    btk(1);
    in.close();
    out.close();
    return 0;
}