Cod sursa(job #2379666)

Utilizator KonnayDinu Marius Valentin Konnay Data 13 martie 2019 21:45:55
Problema Problema Damelor Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.82 kb
#include<iostream>
#include<fstream>

using namespace std;

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

int perm[15];
int n,s=0;

bool col[15];
bool d1[40];
bool d2[40];

void back(int lv)
{
    if(lv>n)
    {
        s++;
        if(s==1)
        {
            for(int i=1;i<lv;i++)
                out<<perm[i]<<" ";
            out<<'\n';
        }
        return;
    }
    for(int i=1;i<=n;i++)
    {
        if(!col[i]&&!d1[lv-i+n]&&!d2[i+lv])
        {
            col[i]=1;
            d1[lv-i+n]=1;
            d2[i+lv]=1;
            perm[lv]=i;

            back(lv+1);

            col[i]=0;
            d1[lv-i+n]=0;
            d2[i+lv]=0;
        }
    }
}

int main()
{
    in>>n;
    back(1);
    out<<s;
    in.close();
    out.close();
    return 0;
}