Pagini recente » Istoria paginii utilizator/lololol | Cod sursa (job #1782783) | Statistici Gagea Costin (CostinGagea) | Cod sursa (job #1330666)
#include <fstream>
using namespace std;
ifstream fin("damesah.in");
ofstream fout("damesah.out");
int N,sol[15],A[100],B[100],solprim[15],C[15],nr;
void back(int k){
if(k==N+1){
nr++;
if(nr==1)
for(int i=1;i<=N;i++)
solprim[i]=sol[i];
return;
}
for(int i=1;i<=N;i++)
if(!C[i] && !A[k+i] && !B[k-i+N]){
C[i]=1;
A[k+i]=1;
B[k-i+N]=1;
sol[k]=i;
back(k+1);
C[i]=0;
A[k+i]=0;
B[k-i+N]=0;
}
}
int main(){
fin>>N;
back(1);
fout<<nr<<"\n";
for(int i=1;i<=N;i++)
fout<<solprim[i]<<" ";
fin.close();fout.close();
return 0;
}