Valid Sudoku
2013-09-30 10:41
148 查看
Q: 九宫独。
判断一个board是否是有效的九宫独。用三个二维数组标记,row,col,block:row[i][j]表示第i行数字j+1是否已经出现过,col和block数组同理。
对于board[i][j],对应的block计算是:i - i%3+j/3
判断一个board是否是有效的九宫独。用三个二维数组标记,row,col,block:row[i][j]表示第i行数字j+1是否已经出现过,col和block数组同理。
对于board[i][j],对应的block计算是:i - i%3+j/3
bool isValidSudoku(vector<vector<char> > &board) { // Start typing your C/C++ solution below // DO NOT write int main() function int n = board.size(); if(n==0) return true; vector<vector<bool>> row(n,vector<bool>(n,false)); vector<vector<bool>> col(n,vector<bool>(n,false)); vector<vector<bool>> block(n,vector<bool>(n,false)); for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(board[i][j]=='.') continue; int num = board[i][j] - '1'; if(row[i][num]||col[j][num]||block[i - i % 3 + j / 3][num]) return false; row[i][num] = col[j][num] = block[i - i % 3 + j / 3][num] = true; } } return true; }
相关文章推荐
- 度娘你这是要干嘛
- 使用activex自动更新,部署多插件及插件更新
- 顺时针打印矩阵
- ProgressBar
- 为商业WordPress主题增加“自动更新”功能
- QC9.0与IE8兼容问题
- 模板--高精度、大整数幂取模
- 通过gdb定位内核宕机
- Android开发Socket实现推送服务 客户端
- poj 3006 java
- javascript 闭包
- Hdu 4706 Children's Day -- 输出图形
- 【§手绘亲亲木朵(oo)】
- 【§手绘亲亲木朵(oo)】
- Oracle 创建表空间Sql
- libQtCassandra 0.5.0 发布
- 又要吐槽一下:xml 根级别上的数据无效。 行 1,位置 1
- 软文营销必将是又一热点营销法子
- wince 录音 wc9713学习
- 如何将google地图中的经纬度值导入ArcMap