Pagini recente » Cod sursa (job #1511105) | Cod sursa (job #3281225) | Cod sursa (job #1934306) | Cod sursa (job #1511093) | Cod sursa (job #1859725)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("damesah.in");
ofstream fout("damesah.out");
int n, col[20], dp[30], ds[30], nr, x[20];
void regine(int k)
{
int i,j;
if(k==n+1){
nr++;
if(nr==1){
for(i=1;i<=n;i++)
fout<<x[i]<<" ";
fout<<"\n";
}
}
else{
for(j=1;j<=n;j++){
if(col[j]==0&&dp[k-j+n]==0&&ds[k+j]==0){
x[k]=j;
col[j]=1;
dp[k-j+n]=1;
ds[k+j]=1;
regine(k+1);
col[j]=0;
dp[k-j+n]=0;
ds[k+j]=0;
}
}
}
}
int main()
{
fin>>n;
nr=0;
regine(1);
fin.close();
fout<<nr;
fout.close();
return 0;
}