Pagini recente » Cod sursa (job #1584568) | Cod sursa (job #1930891) | Cod sursa (job #398968) | Cod sursa (job #1640483) | Cod sursa (job #1998397)
#include <iostream>
#include <fstream>
using namespace std;
int n,s,x[14][14],v[14];
ifstream fin ("damesah.in");
ofstream fout ("damesah.out");
void gts (int l)
{
int ok,i,j,k;
if(l>n)
{
s++;
if(s==1)
{
for(i=1;i<=n;i++)fout<<v[i]<<" ";
fout<<"\n";
}
}
else
{
for(i=1;i<=n;i++)
{
ok=1;
k=i;
for(j=l;j>=1&&k<=n&&ok;j--){if(x[j][k]){ok=0;break;}k++;}
k=i;
for(j=l;j>=1&&k>=1&&ok;j--){if(x[j][k]){ok=0;break;}k--;}
for(j=l;j>=1&&ok;j--)if(x[j][i]){ok=0;break;}
if(ok)
{
x[l][i]=1;
v[l]=i;
gts(l+1);
v[l]=0;
x[l][i]=0;
}
}
}
}
int main()
{
fin>>n;
gts(1);
fout<<s;
return 0;
}