【codevs1295】N皇后问题
problem
solution
codes
//c[i]:第i行的皇后放在第几列
#include<iostream>
using namespace std;
int n, c[20], ans;
void dfs(int cur){if(cur > n)ans++;else for(int i = 1; i <= n; i++){int ok = 1;for(int j = 1; j < cur; j++)if(c[j]==i || c[j]-j==i-cur || c[j]+j==i+cur){ ok = 0; break; }if(ok){c[cur] = i;dfs(cur+1);}}
}
int main(){cin>>n;dfs(1);cout<<ans<<"\n";return 0;
}
【codevs1295】N皇后问题相关推荐
- 【概念理论】不存在的NOIP2016
时间:2017.6.17 0x01搜索 一.定义 1.从数据集合中找出目标元素进行处理. 2.当我们难以通过分析解决给定问题,或者找不到一个能有效解决问题的算法时,就不得不依靠反复的试错来寻求问题的答 ...
- n皇后问题JS实现(N-Queens)
n皇后问题作为经典的面试题,今天在LeetCode刷到,解法比较直接,回溯递归.其他解法咱也不会.... Leetcode地址:https://leetcode.com/problems/n-quee ...
- 回溯 皇后 算法笔记_算法笔记_04_回溯
设计思想: (1)适用:求解搜索问题和优化问题. (2)搜索空间:数,节点对应部分解向量,可行解在树叶上. (3)搜索过程:采用系统的方法隐含遍历搜索树. (4)搜索策略:深度优先,宽度优先,函数优先 ...
- C语言局部搜索算法(爬山法,模拟退火法,遗传算法)求解八皇后问题
C语言局部算法求解八皇后问题 写在前面 八皇后问题及局部搜索算法 爬山法(hill-climbing searching) 算法介绍 代码实现 退火法(simulated annealing) 算法介 ...
- 递归/回溯:八皇后问题N-Queens
N皇后问题是计算机科学中最为经典的问题之一,该问题可追溯到1848年,由国 际西洋棋棋手马克斯·贝瑟尔于提出了8皇后问题. 将N个皇后放摆放在N*N的棋盘中,互相不可攻击,有多少种摆放方式,每种摆 放 ...
- 八皇后的一个回溯递归解法
解法来自严蔚敏的数据结构与算法. 代码如下: #include <iostream> using namespace std; const int N = 8;//皇后数 int coun ...
- Prolog学习:数独和八皇后问题
上一篇简单介绍了下Prolog的一些基本概念,今天我们来利用这些基本概念解决两个问题:数独和八皇后问题. 数独 数独是一个很经典的游戏: 玩家需要根据n×n盘面上的已知数字,推理出所有剩余空格的数字, ...
- N皇后问题的位运算求解——目前最快的方法
核心代码如下: 1 void test(int row, int ld, int rd) 2 { 3 int pos, p; 4 if ( row != upperlim ) 5 { 6 pos = ...
- UVa 167(八皇后)、POJ2258 The Settlers of Catan——记两个简单回溯搜索
UVa 167 题意:八行八列的棋盘每行每列都要有一个皇后,每个对角线上最多放一个皇后,让你放八个,使摆放位置上的数字加起来最大. 参考:https://blog.csdn.net/xiaoxiede ...
最新文章
- 数据结构与算法 / 分治算法
- android stuido 在线安装svn插件,添加版本库无响应
- SPOJ - COT Count on a tree(LCA+主席树+离散化)
- Python----倚楼听风雨
- itil 容量管理流程_大项目定制,智能IT运营管理平台建设解决方案
- intellij快捷键linux,IntelliJ IDEA的几个常用快捷键
- Java 读取Oracle数据库中的Date日期型怎么去掉秒后面的0
- 洛谷4577 LOJ2521:[FJOI2018]领导集团问题——题解
- Python 之 异常检测/异常点搜索
- 张家口地区某一级公路设计--河北建筑工程学院
- android 固件 修改工具箱,固件工具箱(ROM Toolbox)
- win10本机计算机策略,Win10怎么打开本地安全策略_Win10本地安全策略在哪?-192路由网...
- R语言和医学统计学(4):秩和检验
- VBA学习之一:基本知识
- 大专生三面蚂蚁金服,工信部java工程师证书
- 微信小程序python解析获取用户手机号_微信小程序如何获取用户绑定手机号
- g.SetGDIHigh()错误
- 软件工程项目基于java的wc实现
- String的属性和方法实例 Dart
- golang swagger注解说明
热门文章
- 数据结构的时间复杂度与空间复杂度、及相关证明
- Python Tricks(九)—— 递归遍历目录下所有文件
- C++ 标准库 —— random
- 实用的 Python 之 feedparser
- [面试] 算法(一) —— Str2Int
- python最简单的图形编程_Python123
- Android项目目录结构中各个文件夹的作用
- 0基础学python做什么工作好-零基础学Python,越早明白这些,越快找到好工作!...
- python从入门到精通百度云-python从入门到精通视频教程百度云资源
- python爬虫-Python爬虫学习之(一)| 从零开始