1. n-皇后问题
#include<iostream>
#include<cmath>
using namespace std;
int n;
int pai[101];
bool check(int x,int y)
{bool flag = true;for (int i=1;i<x;i++){if (pai[i]==y) flag = false;if (abs(i-x)==abs(pai[i]-y)) flag = false;}return flag;
}
void DFS(int x)
{if (x==n+1){for (int i=1;i<=n;i++){for (int j=1;j<=n;j++){if (pai[i]==j) cout<<"Q";else cout<<".";}cout<<endl;}cout<<endl;}else{for (int i=1;i<=n;i++){//    cout<<1;if (check(x,i)==true){pai[x]=i;DFS(x+1);pai[x]=0;}}}
}
int main()
{cin>>n;DFS(1);return 0;
}

843. n-皇后问题相关推荐

  1. n皇后问题JS实现(N-Queens)

    n皇后问题作为经典的面试题,今天在LeetCode刷到,解法比较直接,回溯递归.其他解法咱也不会.... Leetcode地址:https://leetcode.com/problems/n-quee ...

  2. 回溯 皇后 算法笔记_算法笔记_04_回溯

    设计思想: (1)适用:求解搜索问题和优化问题. (2)搜索空间:数,节点对应部分解向量,可行解在树叶上. (3)搜索过程:采用系统的方法隐含遍历搜索树. (4)搜索策略:深度优先,宽度优先,函数优先 ...

  3. C语言局部搜索算法(爬山法,模拟退火法,遗传算法)求解八皇后问题

    C语言局部算法求解八皇后问题 写在前面 八皇后问题及局部搜索算法 爬山法(hill-climbing searching) 算法介绍 代码实现 退火法(simulated annealing) 算法介 ...

  4. 递归/回溯:八皇后问题N-Queens

    N皇后问题是计算机科学中最为经典的问题之一,该问题可追溯到1848年,由国 际西洋棋棋手马克斯·贝瑟尔于提出了8皇后问题. 将N个皇后放摆放在N*N的棋盘中,互相不可攻击,有多少种摆放方式,每种摆 放 ...

  5. 八皇后的一个回溯递归解法

    解法来自严蔚敏的数据结构与算法. 代码如下: #include <iostream> using namespace std; const int N = 8;//皇后数 int coun ...

  6. Prolog学习:数独和八皇后问题

    上一篇简单介绍了下Prolog的一些基本概念,今天我们来利用这些基本概念解决两个问题:数独和八皇后问题. 数独 数独是一个很经典的游戏: 玩家需要根据n×n盘面上的已知数字,推理出所有剩余空格的数字, ...

  7. N皇后问题的位运算求解——目前最快的方法

    核心代码如下: 1 void test(int row, int ld, int rd) 2 { 3 int pos, p; 4 if ( row != upperlim ) 5 { 6 pos = ...

  8. UVa 167(八皇后)、POJ2258 The Settlers of Catan——记两个简单回溯搜索

    UVa 167 题意:八行八列的棋盘每行每列都要有一个皇后,每个对角线上最多放一个皇后,让你放八个,使摆放位置上的数字加起来最大. 参考:https://blog.csdn.net/xiaoxiede ...

  9. 带你轻而易举的学习python——八皇后问题

    首先我们来看一下这个著名的八皇后问题 八皇后问题:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或同一斜线上,问有多少种摆法. 在这个问题提出之后人们又将 ...

  10. C语言回溯算法解决N皇后问题

    回溯算法的模型是 x++, not satisfy ? x-- : continue. 代码中x作列号,y[x]保存第x列上皇后放置的位置. 1 #include<stdio.h> 2 # ...

最新文章

  1. php qq对话,用php聊QQ
  2. 4.3.1 jQuery基础(1)
  3. Android dex、odex、oat、vdex、art区别
  4. 最新IOS审核被拒原因TOP10 | 附带解决方法
  5. 3.5.1_2 Maven - pom.xml 添加maven-assembly-plugin(官方标准打包插件)
  6. Java8增加功能--Effectively final 功能
  7. PRBS-存储器测试
  8. 剑指offe JZ18 删除链表的节点
  9. Unity3d学习日记 (1)为场景内物体添加基本逻辑和脚本代码
  10. warning: TCG doesn‘t support requested feature: CPUID.01H:ECX.vmx [bit 5]
  11. 微信支付2.0版本,更换参数即可使用
  12. python的列表与元素基本操作
  13. Matter协议与Zigbee
  14. Gunicorn-配置详解
  15. python编程控制机器人_基于Python开发的微信图灵机器人
  16. “正被停用的激活上下文不是最近激活的”的错误的解决
  17. ajax上传 java,javaWeb中使用ajax上传文件
  18. 机器学习:李航-统计学习方法-代码实现
  19. Syntax Error :error node sass version xxx is incompatible with xxx
  20. ERP中的“蝴蝶效应”:重视过程的控制

热门文章

  1. linux可用机场客户端,Linux系统可用的6款Bittorrent客户端
  2. fastjson导致的OOM
  3. highcharts x轴 按照时间 datetime排序
  4. Ant Design Pro 修改title
  5. Transaction rolled back because it has been marked as rollback-only 异常处理
  6. Linux装c编译器gcc,c编译器进阶之路,linux下的gcc c编译器使用教程
  7. 测试===JUnit单元测试
  8. 过滤器filter,监听器listener
  9. SGU495 Kids and Prizes 概率DP,期望公式
  10. [From 1.1~1.2]CLR的执行模型