Cod sursa(job #1189145)

Utilizator gbibBacotiu Gabi gbib Data 21 mai 2014 16:26:39
Problema Problema Damelor Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <fstream>
#include <iostream>
#include <math.h>

using namespace std;
int n,a[30],c[55],d1[55],d2[55],nrsol,vv=1;
ifstream in ("damesah.in");
ofstream out ("damesah.out");

void reg(int l)
{int i,j,ok;

        if (l>n) {
        if (nrsol<1) {
            for (int i=1;i<=n;i++)
                out<<a[i]<<" ";
            out<<"\n";
        }
        nrsol++;
        return ;
    }

        for (int i=1;i<=n;i++)
        {
        if (c[i]==0 && d1[i-l+n]==0 && d2[2*n-l-i+1]==0)
        {
            c[i]=d1[i-l+n]=d2[2*n-l-i+1]=1;
            a[l]=i;

            reg(l+1);
            c[i]=d1[i-l+n]=d2[2*n-l-i+1]=0;
        }
    }
}
int main()
{int h;
in>>n;
reg(1);
out<<nrsol<<'\n';
    return 0;


}