leetcode-36-valid sudoku
来源:互联网 发布:手机怎么切换软件 编辑:程序博客网 时间:2024/06/05 08:11
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.
题意:判断一个9*9二维数组是否有效数独。每行每列每个小格都要满足1-9。
class Solution {public: bool isValidSudoku(vector<vector<char> > &board) { // Note: The Solution object is instantiated only once. int row[9],col[9]; for(int i = 0; i < 9; i++) { memset(row,0,sizeof(int)*9); memset(col,0,sizeof(int)*9); for(int j = 0; j < 9; j++) { if(board[i][j] != '.') { if(row[board[i][j]-'1'] > 0)return false; else row[board[i][j]-'1']++; } if(board[j][i] != '.') { if(col[board[j][i]-'1'] > 0)return false; else col[board[j][i]-'1']++; } } } for(int i = 0; i < 9; i+=3) for(int j = 0; j < 9; j+=3) { memset(row,0,sizeof(int)*9); for(int a = 0; a < 3; a++) for(int b= 0; b < 3; b++) if(board[i+a][j+b] != '.') { if(row[board[i+a][j+b]-'1']>0)return false; else row[board[i+a][j+b]-'1']++; } } return true; } };
if(row[board[i][j]-‘1’] > 0)return false; 这句要注意。row索引用字符直接 -‘1’。
0 0
- [leetcode 36] Valid Sudoku
- leetcode 36: Valid Sudoku
- LeetCode(36) Valid Sudoku
- leetcode-36 Valid Sudoku
- Valid Sudoku - LeetCode 36
- LeetCode 36 Valid Sudoku
- LeetCode---(36) Valid Sudoku
- Leetcode 36 Valid Sudoku
- Leetcode[36]-Valid Sudoku
- leetcode 36: Valid Sudoku
- Leetcode# 36 Valid Sudoku
- Leetcode#36||Valid Sudoku
- leetcode-36 Valid Sudoku
- leetcode 36:Valid Sudoku
- LeetCode 36: Valid Sudoku
- [leetcode 36] Valid Sudoku
- 【LEETCODE】36-Valid Sudoku
- Leetcode 36 - Valid Sudoku
- RCurl包学习笔记
- Android环境常见的问题
- Caffe学习笔记(三)——Matlab接口
- 1323: 算法2-1:集合union
- 反射 EF SqlQuery 返回匿名类型
- leetcode-36-valid sudoku
- Opencv246+vs2012生成不依赖编译环境的exe文件
- GCD线程间通信
- requireJs进行模块化开发
- 编写脚本和批处理
- TTNavigationBar-alpha 导航栏隐藏渐变
- 关于指针作为函数参数的一些想法
- 通过 Hibernate 实现 JPA 对象关系模型之继承映射策略
- c语言 组合数学+大数取模