zoukankan      html  css  js  c++  java
  • LeetCode N-Queens II

    Follow up for N-Queens problem.

    Now, instead outputting board configurations, return the total number of distinct solutions.

     1 public class Solution {
     2     int result;  
     3     int[] A; 
     4     public int totalNQueens(int n) {
     5         A = new int[n];  
     6         nqueens(0, n);  
     7         return result;    
     8     }
     9 
    10      public void nqueens(int cur, int n){  
    11          if(cur==n) result++;  
    12          else {  
    13              for(int i=0;i<n;i++){  
    14                  A[cur] = i;  
    15                  if(valid(cur)){  
    16                      nqueens(cur+1, n);  
    17                  }  
    18              }  
    19          }  
    20      }  
    21      public boolean valid(int r){  
    22          for(int i=0;i<r;i++){  
    23              if(A[i]==A[r]|| Math.abs(A[i]-A[r])==r-i){  
    24                  return false;  
    25              }  
    26          }  
    27          return true;  
    28      }  
    29 }
  • 相关阅读:
    Codeforces_731_C
    Codeforces_731_B
    Codeforces_731_A
    HDU_1035_水
    POJ_3450_KMP
    POJ_2185_二维KMP
    POJ_2752_KMP
    Codeforces_492_E
    Codeforces_338_D
    Codeforces_327_C
  • 原文地址:https://www.cnblogs.com/birdhack/p/4245142.html
Copyright © 2011-2022 走看看