Cod sursa(job #1723424)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 30 iunie 2016 16:38:46
Problema Problema Damelor Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
using namespace std;
int n,p[14],sol;
bool c[14],dp[27],dm[27];
ifstream f("damesah.in");
ofstream g("damesah.out");
void back(int i)
{
    for(int j=1;j<=n;++j)
        if(!c[j]&&!dp[i+j]&&!dm[i-j+n])
        {
            p[i]=j;
            c[j]=dp[i+j]=dm[i-j+n]=1;
            if(i==n)
            {
                if(!sol++)
                    for(int k=1;k<=n;++k)
                        g<<p[k]<<" ";
            }
            else back(i+1);
            c[j]=dp[i+j]=dm[i-j+n]=0;
        }
}
int main()
{
    f>>n;
    back(1);
    g<<'\n'<<sol;
    return 0;
}