Pagini recente » Cod sursa (job #2705088) | Cod sursa (job #2705090)
#include <fstream>
using namespace std;
ifstream be("damesah.in");
ofstream ki("damesah.out");
int n,db;
bool oszlop[30],f_atlo[30],m_atlo[30];
int k[30];
void solve(int j)
{
if(n==j)
{
if(db<1)
{
for(int i=0;i<n;i++)
ki<<k[i]<<" ";
ki<<"\n";
}
db++;
}
else
{
for(int i=0;i<n;i++)
{
if(!oszlop[i] && !f_atlo[i-j+n-1] && !m_atlo[j+i]){
k[j]=i+1;
oszlop[i]=f_atlo[i-j+n-1]=m_atlo[j+i]=true;
solve(j+1);
oszlop[i]=f_atlo[i-j+n-1]=m_atlo[j+i]=false;
}
}
}
}
int main()
{
be>>n;
solve(0);
ki<<db;
return 0;
}