leetcode数组之Valid Sudoku
来源:互联网 发布:hitleap类似的软件 编辑:程序博客网 时间:2024/05/19 05:30
描述:
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules
http://sudoku.com.au/TheRules.aspx .
The Sudoku board could be partially filled, where empty cells are filled with the character '.'.
【题意】:即判断一个数独是否有解
假设一个数独是有效的,则它符合数独游戏 规则。
数独游戏 规则:
(1)每一行都必须在1-9的范围内,且只出现一次。
(2)每一列都必须在1-9的范围内,且只出现一次。
(3)数字1-9在每个子宫格中只出现一次。
数独宫格可以部分填充,其中空单元格都充满了字符'.'。
//(1)检查行//(2)检查列//(3)检查9个子宫格 class Solution {public: bool isValidSudoku(vector<vector<char>> &board){ bool used[9]; for(int i=0;i<9;i++) { fill(used,used+9,false); //检查行; for(int j=0;j<9;j++) { if(!check(board[i][j],used)) return false; } fill(used,used+9,false); //检查列; for(int j=0;j<9;j++) { if(!check(board[j][i],used)) return false; } } for(int row=0;row<3;row++) //检查9个子宫格 { for(int col=0;col<3;col++) { fill(used,used+9,false); for(int i=row*3;i<row*3+3;i++) { for(int j=col*3;j<col*3+3;j++) { if(!check(board[i][j],used)) return false; } } } } return true;}private:bool check(char ch,bool used[9]){ if(ch=='.') return true; if(used[ch-'1']) return false; //字符ch已用过 else { used[ch-'1']=true;//字符ch未用过 return true; }}};
0 0
- leetcode数组之Valid Sudoku
- leetcode之Valid Sudoku
- LeetCode之Valid Sudoku
- leetcode之Valid Sudoku
- leetcode之valid sudoku
- [leetcode] 【数组】36. Valid Sudoku
- LeetCode算法题之Valid Sudoku
- leetcode之路036 Valid Sudoku
- LeetCode进阶之路(Valid Sudoku)
- 【LeetCode】Valid Sudoku && Sudoku Solver
- [Leetcode]Sudoku Solver&&Valid Sudoku
- leetcode Valid Sudoku & Sudoku Solver
- LeetCode : Valid Sudoku
- [LeetCode]Valid Sudoku
- [leetcode] Valid Sudoku
- LeetCode-Valid Sudoku
- LeetCode Valid Sudoku
- LeetCode - Valid Sudoku
- Node.js编程
- 【个人笔记重点,不作为参考】主题:面向对象的程序设计
- 设计模式——单例模式
- 如何在android应用程序中拷贝第三方资产目录下的数据库文件到应用私有目录下
- Decimal integer conversion
- leetcode数组之Valid Sudoku
- 计算机硬件的五大单元以及CPU的种类
- HDU 1260 Tickets(DP OR 记忆化搜索)
- warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
- 千万亿级别中文金额转数字
- 动态规划 03 (采药)
- JCE无限制权限策略文件
- 文章标题
- 毕设——图像视觉显著性目标检测(第五周到第七周工作总结)