Pagini recente » Cod sursa (job #2917915) | Cod sursa (job #542222) | Cod sursa (job #1730535) | Cod sursa (job #2815229) | Cod sursa (job #1714023)
#include<fstream>
#include<bitset>
using namespace std;
ifstream fin("damesah.in");
ofstream fout("damesah.out");
int n,i,j,z,x[20];
bitset<14> c;
bitset<30> ds;
bitset<30> dp;
int sol;
void backl(int pas){
if(pas>n){
sol++;
if(sol==1){
for(i=1;i<=n;i++){
fout<<x[i]<<" ";
}
fout<<"\n";
}
}
else{
for(int i=1;i<=n;i++){
if(c[i]==0&&ds[i+pas]==0&&dp[i-pas+n]==0){
c[i]=1;
ds[i+pas]=1;
dp[i-pas+n]=1;
x[pas]=i;
backl(pas+1);
c[i]=0;
ds[i+pas]=0;
dp[i-pas+n]=0;
}
}
}
}
int main(){
fin>>n;
backl(1);
fout<<sol;
return 0;
}