Cod sursa(job #1729836)

Utilizator refugiatBoni Daniel Stefan refugiat Data 15 iulie 2016 18:07:52
Problema Problema Damelor Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
ifstream si("damesah.in");
ofstream so("damesah.out");
int n;
bitset<15>c;
bitset<30>dp,ds;
int sol[15];
int cont;
void gen(int lin)
{
    if(lin>n)
    {
        if(cont==0)
        {
            int i;
            for(i=1;i<=n;++i)
                so<<sol[i]<<' ';
            so<<'\n';
        }
        ++cont;
        return;
    }
    for(int i=1;i<=n;++i)
    {
        if(!c[i]&&!dp[i+n-lin]&&!ds[i+lin-1])
        {
            c[i]=dp[i+n-lin]=ds[i+lin-1]=1;
            sol[lin]=i;
            gen(lin+1);
            c[i]=dp[i+n-lin]=ds[i+lin-1]=0;
        }
    }
}
int main()
{
    si>>n;
    gen(1);
    so<<cont;
    return 0;
}