Cod sursa(job #55196)

Utilizator nashnash mit nash Data 26 aprilie 2007 18:43:19
Problema Dame Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <fstream>
#include <math.h>

using namespace std;

int st[1001],n,sol;

void tipar() {
	ofstream fout("dame.out");
	fout<<n<<endl;
	for(int i=1;i<=n;i++) 
		fout<<i<<" "<<st[i]<<endl;
	fout.close();
};

void back(int k) {
	int i,j,ok;

	if(k==n+1) { tipar(); sol=0; }
	else for(i=1;i<=n && sol;i++) {
		ok=1;
		for(j=1;j<=k-1 && ok ;j++)
			if(st[j]==i || abs(j-k)==abs(st[j]-i) ) ok=0;
		if(ok) { st[k]=i;  back(k+1); }
	};
};

int main() {
	ifstream fin("dame.in");
	fin>>n;
	sol=1;
	back(1);
	return 0;
}