Cod sursa(job #2007395)

Utilizator crisana stanescu cris Data 2 august 2017 18:40:37
Problema Problema Damelor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <stdlib.h>
#include <fstream>
#define ma 100
using namespace std;
ifstream f("damesah.in");
ofstream g("damesah.out");
int a[ma],n,k,c=0;
void scriere()
{int i;
for (i=1;i<=n;i++) g<<a[i];
g<<'/n';}
int ok(int k,int j)
{int i,v=1;
for (i=1;i<k;i++)
{if ((j==a[i])||((k-i)==abs(j-a[i]))) v=0;}
if (v==1) return 1;
}
void bkt (int k)
{int i;
for (i=1;i<=n;i++)
{if (ok(k,i)==1) {if (k<n) {a[k]=i;
                           bkt(k+1);}
                 if(k==n)  {a[k]=i;
                            c=c+1;
                            if (c==1) scriere();}}
}
}

int main()
{
ifstream f("damesah.in");
ofstream g("damesah.out");
f>>n;
bkt(1);
g<<c;
f.close();
g.close();
return 0;
}