LeetCode 36 Valid Sudoku
来源:互联网 发布:lockin china 知乎 编辑:程序博客网 时间:2024/06/05 10:37
题意:
判断一个填了一部分的数独有没有解。
思路:
按照数独规则判断即可,即同一行、同一列、同一个3*3的方格内没有数字重复出现。
代码:
class Solution {public: bool isValidSudoku(vector <vector<char>> &board) { const int step = 3; bool app[step * step]; for (int i = 0; i < step * step; ++i) { memset(app, 0, sizeof(app)); for (int j = 0; j < step * step; ++j) { if (board[i][j] != '.') { if (app[board[i][j] - '1']) { return false; } else { app[board[i][j] - '1'] = true; } } } memset(app, 0, sizeof(app)); for (int j = 0; j < step * step; ++j) { if (board[j][i] != '.') { if (app[board[j][i] - '1']) { return false; } else { app[board[j][i] - '1'] = true; } } } memset(app, 0, sizeof(app)); int x = i / 3 * 3, y = i % 3 * 3; for (int j = 0; j < step * step; ++j) { int dx = j / 3 + x, dy = j % 3 + y; if (board[dx][dy] != '.') { if (app[board[dx][dy] - '1']) { return false; } else { app[board[dx][dy] - '1'] = true; } } } } return true; }};
阅读全文
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
- SBT构建工具
- -bash: 08: value too great for base (error token is "08")
- 01背包问题
- 细密引脚芯片的焊接
- 工具类-HttpClientUtil
- LeetCode 36 Valid Sudoku
- javascript 闭包
- C#,往线程里传参数的方法总结
- ListView显示当前选取的item
- 应为本机上的jdk版本低导致spring-tool-suite无法启动
- 多线程之等待通知机制
- C++线程传递多个参数demo
- OmniFocus for Mac的几个快捷键
- httpd配置详解(四)