Cod sursa(job #2282015)

Utilizator Gl0WCula Stefan Gl0W Data 13 noiembrie 2018 08:05:33
Problema Combinari Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.84 kb
#include <fstream>
#include <algorithm>

using namespace std;

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

int n, p, x[20], w[20];

int cont(int k){
    for(int i = 1; i < k; i++){
        if(x[k] == x[i]){
            return 0;
        }
    }
    return 1;
}

void bkt(int k){
    if(k > p){
        int ok = 1;
        for(int i = 1; i < p; i++){
            if(x[i] > x[i + 1]){
                ok = 0;
            }
        }
        if(ok){
            for(int i = 1; i <= p; i++){
                fout<<x[i]<<" ";
            }
            fout<<"\n";
        }
    }
    else{
        for(int i = 1; i <= n; i++){
            x[k] = i;
            if(cont(k)){
                bkt(k + 1);
            }
        }
    }
}

int main()
{
    fin>>n>>p;
    bkt(1);
    return 0;
}