Cod sursa(job #2282772)

Utilizator andaraluca2001Anda Epure andaraluca2001 Data 14 noiembrie 2018 15:22:17
Problema Problema Damelor Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <cstdlib>
#include <fstream>
using namespace std;

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


int n,v[100];
int a[100],b[100],c[100],val;

inline void print()
{
      for(int i=1;i<=n;i++) out<<v[i]<<" ";

    out<<'\n';
}

inline void bkt(int strat)
{
    if(strat==n)
    {
        if(val==0) print();
        val++;
        //exit(0);
        return;
    }
    for(int r=1;r<=n;r++)
    {
        int fa=r;
        int fb=r-strat+50;
        int fc=r+strat+50;
        if(a[fa]==0 && b[fb]==0 && c[fc]==0)
        {
            v[strat+1]=r;
            a[fa]=b[fb]=c[fc]=1;
            bkt(strat+1);
            a[fa]=b[fb]=c[fc]=0;
        }
    }
}

int main()
{
    in>>n;
    bkt(0);
    out<<val;
    return 0;
}