Pagini recente » Cod sursa (job #2006355) | Cod sursa (job #1984764) | summer-challenge-21/solutii/portale | Cod sursa (job #2956046) | Cod sursa (job #3224069)
#include <fstream>
using namespace std;
ifstream cin("damesah.in");
ofstream cout("damesah.out");
int col[13],diag1[27],diag2[27],regina[27];
int rasp;
void parc(int l,int n) {
if(l==n) {
if(rasp<1) {
int c;
for(c=0;c<n;c++ )
cout<<regina[c]+1<<" ";
cout<<"\n";
}
rasp++;
}else{
int c;
for(c=0;c<n;c++) {
if(!col[c] && !diag1[c-l+n-1] && !diag2[l+c] ) {
regina[l]=c;
col[c]=diag1[c-l+n-1]=diag2[l+c]=1;
parc(l+1,n);
col[c]=diag1[c-l+n-1]=diag2[l+c]=0;
}
}
}
}
int main()
{
int n;
cin>>n;
rasp=0;
parc(0,n);
cout<<rasp;
return 0;
}