Cod sursa(job #1595720)

Utilizator alexmanoAlex Manolache alexmano Data 10 februarie 2016 14:59:26
Problema Problema Damelor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <cmath>

using namespace std;

ifstream in("input.in");
ofstream out("output.out");

int v[14], N, c;

int verif (int i)
{
    for (int k = 1; k < i; k++)
    {
        if (abs(v[i] - v[k]) == (i - k))
            return 0;
        if (v[i] == v[k])
            return 0;
    }
    return 1;
}

void back (int i)
{
    if (i > N){
        if(c==0){
            for(int k=1;k<i-1;k++) out<<v[k]<<' ';
            out<<v[i-1]<<'\n';
        }
        c++;
    }
    else
    {
        for (v[i] = 1; v[i] <= N; v[i]++)
        {
            if (verif(i))
                back(i+1);
        }
    }
}

int main()
{
    in >> N;
    back(1);
    out << c;
    return 0;
}