标签:
#include<stdio.h> #include<string.h> #include <iostream> using namespace std; int n,tmp; int map[11]; void dfs(int k) { int i,j,flag; if(k==n+1) { tmp++; return ; } else { for(i=1;i<=n;i++) { map[k]=i; flag=1; for(j=1;j<k;j++) { if(map[j]==i||i-k==map[j]-j||i+k==map[j]+j) { flag=0; break; } } if(flag) dfs(k+1); } } } int main() { int i,m; int ans[11]; for(n=1;n<=10;n++) { tmp=0; dfs(1); ans[n]=tmp; } while(cin>>m&&m) { cout<<ans[m]<<endl; } return 0; }
标签:
原文地址:http://www.cnblogs.com/nefu929831238/p/5530770.html