博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Leetcode] Valid Sudoku
阅读量:6427 次
发布时间:2019-06-23

本文共 1866 字,大约阅读时间需要 6 分钟。

Determine if a Sudoku is valid, according to: .

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.

没啥算法,纯模拟!

1 class Solution { 2 public: 3     bool isValidCell(vector
> &board, int a, int b) { 4 vector
flag(9, false); 5 int idx; 6 for (int i = 0; i < 3; ++i) { 7 for (int j = 0; j < 3; ++j) { 8 idx = board[a + i][b + j] - '0'; 9 if (idx > 0 && idx <= 9 && !flag[idx]) 10 flag[idx] = true;11 else if (idx > 0 && idx <= 9 && flag[idx])12 return false;13 }14 }15 return true;16 }17 18 bool isValidRow(vector
> &board, int a) {19 vector
flag(9, false);20 int idx;21 for (int j = 0; j < 9; ++j) {22 idx = board[a][j] - '0';23 if (idx > 0 && idx <= 9 && !flag[idx]) 24 flag[idx] = true;25 else if (idx > 0 && idx <= 9 && flag[idx])26 return false;27 }28 return true;29 }30 31 bool isValidCol(vector
> &board, int b) {32 vector
flag(9, false);33 int idx;34 for (int i = 0; i < 9; ++i) {35 idx = board[i][b] - '0';36 if (idx > 0 && idx <= 9 && !flag[idx]) 37 flag[idx] = true;38 else if (idx > 0 && idx <= 9 && flag[idx])39 return false;40 }41 return true;42 }43 44 bool isValidSudoku(vector
> &board) {45 for (int i = 0; i < 3; ++i) {46 for (int j = 0; j < 3; ++j) {47 if (!isValidCell(board, 3 * i, 3 * j)) 48 return false;49 }50 }51 for (int i = 0; i < 9; ++i) {52 if (!isValidRow(board, i))53 return false;54 }55 for (int j = 0; j < 9; ++j) {56 if (!isValidCol(board, j))57 return false;58 }59 return true;60 }61 };

 

转载地址:http://tayga.baihongyu.com/

你可能感兴趣的文章
IIS SSL客户端证书(忽略/接受/必须)之三——思考验证(1)
查看>>
Angular 文档中链接的修改路径
查看>>
JTable内容居中显示
查看>>
MySQL内置help解析(SQL语句说明书)
查看>>
使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件
查看>>
vShield App设计指南[中]
查看>>
跟我一起数据挖掘(20)——网站日志挖掘
查看>>
在Solaris 下使用Os Watcher 监控Oracle
查看>>
1.9 使用PuTTY远程连接Linux;1.10 使用xshell连接Linux;1.11 PuT
查看>>
[unity3d]为我们的游戏添加好看的字体
查看>>
android 查询工具源代码
查看>>
OSI七层--百度摘抄
查看>>
活动目录的部署
查看>>
vs多项目模板及add-in开发
查看>>
隔绝距离上一轮意甲联赛只过去了48小时
查看>>
对称加密与非对称加密
查看>>
高可用集群原理概念详述
查看>>
PHP实现杨辉三角
查看>>
Wireshark系列之6 数据流追踪
查看>>
我的友情链接
查看>>