[LeetCode]N-Queens II
来源:互联网 发布:js 弹出输入框 编辑:程序博客网 时间:2024/06/08 11:49
Question
Follow up for N-Queens problem.
Now, instead outputting board configurations, return the total number of distinct solutions.
本题难度Hard。
【思路】
N-Queens中返回棋盘变成了解的个数。不必多说。
【代码】
public class Solution { int ans=0; public int totalNQueens(int n) { //require if(n<=0) return ans; //create int[] nqueens=new int[n]; //invariant dfs(nqueens,n,0); //ensure return ans; } private boolean isValid(int[] nqueens,int step){ for(int i=0;i<step;i++){ if(nqueens[i]==nqueens[step]||Math.abs(nqueens[i]-nqueens[step])==(step-i)) return false; } return true; } private void dfs(int[] nqueens,int n,int step){ //base case if(step>n-1){ ans++; return; } for(int i=0;i<n;i++){ nqueens[step]=i; if(isValid(nqueens,step)) dfs(nqueens,n,step+1); } }}
参考
N-Queens
0 0
- 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
- Leetcode N-Queens II
- N-Queens II -- LeetCode
- N-Queens II - LeetCode
- es集群:禁止分片和副本分配
- String比较为什么要用equals?用==的问题
- ruby 更新到 2.3.1
- springMVC 上传和下载
- UC/OS-II学习笔记--STM32移植
- [LeetCode]N-Queens II
- iOS UIScrollView定时循环播放图片
- Oculus Utilities for Unity 插件预制体属性
- 认识 java JVM虚拟机选项 Xms Xmx PermSize MaxPermSize 区别
- xUtils的使用(一)
- JSP Cookie读取
- Oracle在线重定义DBMS_REDEFINITION 普通表—>分区表
- 【计算机网络】时延、发送时延、传输时延、处理时延、排队时延、时延带宽积
- Android Studio中Gradle介绍