Cod sursa(job #3319235)

Utilizator nverde1119Popa Narcis Constantin nverde1119 Data 31 octombrie 2025 12:47:49
Problema Problema Damelor Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <fstream>
#include <cmath>

using namespace std;
ifstream cin("damesah.in");
ofstream cout("damesah.out");
int x[14],n,nr;
bool okay=1,F[14];
bool valid(int k)
{
    for(int i=1; i<k; i++)
    {
        if(k-i==abs(x[k]-x[i])) return 0;
    }
    return 1;
}
void afis()
{
    for(int i=1; i<=n; i++)
        cout<<x[i]<<' ';
}
void bt(int k)
{
    if(k<=n)
    {
        for(int i=1; i<=n; i++)
        {
            if(!F[i])
            {   F[i]=1;
                x[k]=i;
                if(valid(k)) bt(k+1);
                F[i]=0;
            }
        }
    }
    else
    {
        if(okay==1)
        {
            okay=0;
            afis();
        }
        nr++;
    }
}
int main()
{
    cin>>n;
    bt(1);
    cout<<'\n'<<nr;
    return 0;
}