Cod sursa(job #2134787)

Utilizator NicolaalexandraNicola Alexandra Mihaela Nicolaalexandra Data 18 februarie 2018 12:26:24
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;

ifstream fin ("dusman.in");
ofstream fout ("dusman.out");
int n,m,k,i,X,Y,x[1001],sol[1001],a[1001][1001];
void back (int pas){

    if (k < 0)
        return;
    if (pas > n){
        k--;
        if (k == 0){
            for (int i=1;i<=n;i++)
                fout<<sol[i]<<" ";
        }
        return;
    }

    for (int i=1;i<=n;i++){
        if (x[i] == 0 && a[sol[pas-1]][i] == 0){
            x[i] = 1;
            sol[pas] = i;
            back (pas+1);
            x[i] = 0;
        }
    }


}

int main (){

    fin>>n>>k>>m;
    for (i=1;i<=m;i++){
        fin>>X>>Y;
        a[X][Y] = a[Y][X] = 1; /// exista relatie de dusmanie
    }

    back (1);


    return 0;
}