Pagini recente » Cod sursa (job #885866) | Cod sursa (job #2743745) | Cod sursa (job #632671) | Cod sursa (job #1263183) | Cod sursa (job #3162574)
#include <iostream>
#include <fstream>
#include <deque>
#include <algorithm>
#include <cmath>
#define DIM 13
using namespace std;
//ifstream f("in.in");
//ofstream g("out.out");
ifstream f("damesah.in");
ofstream g("damesah.out");
int v[DIM+5],u[DIM+5],n,sol = 0;
void backtrack(int pas){
if(pas == n+1){
for(int i=1;i<n;i++){
for(int j=i+1;j<=n;j++){
if(abs(v[i]-v[j]) == j-i){
return;
}
}
}
sol++;
if(sol == 1){
for(int i=1;i<=n;i++){
g<<v[i]<<" ";
}
g<<"\n";
}
return;
}
for(int i=1;i<=n;i++){
if(u[i]){
continue;
}
v[pas] = i;
u[i] = 1;
backtrack(pas+1);
u[i] = 0;
}
}
int main()
{
f>>n;
backtrack(1);
g<<sol;
return 0;
}