Pagini recente » Cod sursa (job #2134101) | Cod sursa (job #802998) | Cod sursa (job #2293327) | Cod sursa (job #1008556) | Cod sursa (job #837694)
Cod sursa(job #837694)
#include<cstdio>
#include<cstdlib>
int n,c,fol[20],sc[20];
void back(int poz){
if(poz==n+1){
++c;
//for(int i=1;i<=n;++i)printf("%d ",sc[i]);
// printf("\n");
return;
}
for(int i=1;i<=n;++i){
if(fol[i]==0&&(abs(sc[poz-1]-i)<3||poz==1)){
fol[i]=1;
sc[poz]=i;
back(poz+1);
fol[i]=0;
}
}
}
int main (){
freopen("12perm.in","r",stdin);
freopen("12perm.out","w",stdout);
scanf("%d",&n);
back(1);
printf("%d\n",c);
return 0;
}