leetcode-51-N-Queens II
来源:互联网 发布:哈尔滨java培训机构 编辑:程序博客网 时间:2024/06/04 19:57
问题
题目:[leetcode-51]
思路
dfs注意剪枝。恢复状态。
代码
class Solution {public: int totalNQueens(int n) { vector<int> visited; int ans = 0; dfs( n, 0, visited, ans ); return ans; }private: void dfs( int n, int cur, vector<int>& visited, int& ans ){ if( cur == n ) ++ans; else{ for(int k = 0; k < n; ++k){ if( valid(cur, k, visited) ){ visited.push_back( k ); dfs( n, cur+1, visited, ans ); visited.pop_back(); } } } }// dfs bool valid( int x, int y, vector<int>& visited ){ int sz = visited.size(); for(int u = 0; u < sz; ++u){ int v = visited[u]; // same colume if( y == v ) return false; // same diag if( abs(x-u) == abs(y-v) ) return false; } return true; }// valid};
阅读全文
0 0
- LeetCode 51 N-Queens II
- LeetCode 51 - N-Queens II
- leetcode-51-N-Queens II
- LeetCode: N-Queens II
- LeetCode : N-Queens II
- [Leetcode] N-Queens II
- 【leetcode】N-Queens II
- LeetCode: N Queens II
- [LeetCode]N-Queens II
- LeetCode - N-Queens II
- LeetCode:N-Queens II
- 【leetcode】N-Queens II
- LeetCode:N-Queens II
- Leetcode: N-Queens II
- leetcode N-Queens II
- LeetCode | N-Queens II
- Leetcode: N-Queens II
- LeetCode N-Queens II
- 【HDU
- 数据结构编程笔记三:第二章 线性表 顺序表的实现
- Windows 10 安装spark
- 网联 vs 银联
- 微信小程序开发实践点滴——Bmob常用API的使用
- leetcode-51-N-Queens II
- Python基础四
- SED高级编辑命令
- Java UML类图详解
- 使用Coding.net+Hexo+node.js+git来搭建个人博客
- 算法题/求二进制数中1的个数
- PhotoView的使用
- VMware Workstation虚拟机不能联网的解决办法
- iOS-NSRunLoop详解+++