原始版N皇后问题,最慢的算法
2012-05-27 10:36
120 查看
#include<stdio.h> #include<string.h> int c[15],sum,n; int map[15][15]; void dfs(int ); int main() { while(scanf("%d",&n)&&n) { sum=0; memset(c,0,sizeof(c)); dfs(0); printf("%d\n",sum); } return 0; } void dfs(int num) { if(num==n) { sum++; return ; } int i,j,hang_c,lie_c; for(i=0;i<n;i++) { for(j=0;j<num;j++) { hang_c=num-j; if(hang_c<0) hang_c=0-hang_c; lie_c=c[j]-i; if(lie_c<0) lie_c=0-lie_c; if(lie_c==hang_c||i==c[j]) { break; } } if(j==num) { c[num]=i; dfs(num+1); } } }
相关文章推荐
- 原始版N皇后问题,最慢的算法
- 每周算法练习——n皇后问题
- 国际象棋“皇后”问题的回溯算法
- 国际象棋“皇后”问题的回溯算法
- 【算法】8皇后问题
- 回溯算法 8皇后问题的一种解法 适合初学者观察整个回溯的过程
- 经典算法系列之n皇后问题
- N皇后问题的两个最高效的算法
- [经典算法]8皇后问题sql求解(回溯算法)
- 算法系列——N皇后问题
- N皇后问题的两个最高效的算法
- 算法学习之8皇后问题
- 【数据结构】算法6.16 N皇后问题
- 算法笔记_072:N皇后问题(Java)
- 国际象棋“皇后”问题的回溯算法
- leetcode:N-Queens II (n皇后问题2)【面试算法题】
- [算法]经典算法8皇后(N皇后)问题的解法,C语言实现
- N皇后问题的两个最高效的算法
- lv 算法与回溯法相结合解决n皇后问题
- 算法系列——N皇后问题