Cod sursa(job #2376674)

Utilizator edynator34Nechitoaia George-Edward edynator34 Data 8 martie 2019 17:03:17
Problema Problema Damelor Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("damesah.in");
ofstream out("damesah.out");
int v[20];
int bb[20][20];
int n,nr;
int verificare(int k){
    for(int i=1;i<=k-1;++i)
        if(abs(v[k]-v[i])==k-i || v[k]==v[i]) return 0;
    return 1;
}

void solutie(){

    if(nr==1) for(int i=1;i<=n;++i) out<<v[i]<<' ';

}

void backt(int k){
        for(int i=1;i<=n;++i){
            v[k]=i;
            if(verificare(k)) {

            if(k==n) {nr++;solutie();}
            else backt(k+1);
}
        }
    }


int main()
{
    in>>n;
    backt(1);
    out<<'\n'<<nr<<'\n';
    return 0;
}