Valid Sudoku

来源:互联网 发布:淘宝修改店铺最低折扣 编辑:程序博客网 时间:2024/06/11 22:24

Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.

The Sudoku board could be partially filled, where empty cells are filled with the character '.'.


A partially filled sudoku which is valid.

Note:

A valid Sudoku board (partially filled) is not necessarily solvable. Only the filled cells need to be validated.


连着几天没敲代码,感觉还是有点手生。数独题,不是很难,但也花了一些时间。

代码:

package code;public class Sudoku {public static void main(String[] args) {char [][] board ={{'.','8','7','6','5','4','3','2','1'},{'2','.','.','.','.','.','.','.','.'},{'3','.','.','.','.','.','.','.','.'},{'4','.','.','.','.','.','.','.','.'},{'5','.','.','.','.','.','.','.','.'},{'6','.','.','.','.','.','.','.','.'},{'7','.','.','.','.','.','.','.','.'},{'8','.','.','.','.','.','.','.','.'},{'9','.','.','.','.','.','.','.','.'},};System.out.print("res:"+ new Sudoku().isValidSudoku(board));}// row column 3*3public boolean isValidSudoku(char[][] board) {int sets = board.length;boolean[] exist_x = new boolean[10];boolean[] exist_y = new boolean[10];for (int i = 0; i < exist_x.length; i++) {exist_x[i] = false;exist_y[i] = false;}// row columnfor (int i = 0; i < 9; i++) {// initfor (int k = 0; k < exist_x.length; k++) {exist_x[k] = false;exist_y[k] = false;}for (int j = 0; j < 9; j++) {// rowif (board[i][j] != '.') {int num_x = Integer.parseInt(board[i][j] + "");if (exist_x[num_x] == true)return false;exist_x[num_x] = true;}// columnif (board[j][i] != '.') {int num_y = Integer.parseInt(board[j][i] + "");if (exist_y[num_y] == true)return false;exist_y[num_y] = true;}}}// 3*3boolean[] exist = new boolean[10];for (int i = 0; i < exist_x.length; i++) {exist[i] = false;}for (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {// clearfor (int q = 0; q < exist_x.length; q++) {exist[q] = false;}for (int k = 0; k < 3; k++) {for (int t = 0; t < 3; t++) {if (board[3*i+k][3*j+t] != '.') {int num = Integer.parseInt(board[3*i+k][3*j+t] + "");if (exist[num] == true)return false;exist[num] = true;}}}}}return true;}}




0 0
原创粉丝点击