Pagini recente » Cod sursa (job #1019803) | Cod sursa (job #1889280) | Cod sursa (job #364907) | Cod sursa (job #3137228) | Cod sursa (job #1883365)
#include <fstream>
using namespace std;
ifstream fin ("damesah.in");
ofstream fout("damesah.out");
int n,s[17],d[17],sd[17],v[17],z,j;
void af()
{
for (int i=1;i<=n;++i)
{
fout << s[i] << ' ';
}
fout <<'\n';
}
void bc(int k)
{
if (k==n+1)
{
++z;
if (z==1)
af();
}
else
{
for (int j=1;j<=n;++j)
{
if ( !v[j] && !d[k+j] && !sd[k-j+13])
{
s[k]=j;
d[k+j]=sd[k-j+13]=v[j]=1;
bc(k+1);
d[k+j]=sd[k-j+13]=v[j]=0;
}
}
}
}
int main()
{
fin >> n;
bc(1);
fout << z;
return 0;
}