我没有看到这个问题,这使其在现货需求数独,害怕一直没敢做。后来我发现原来的标题就是这么简单。推断现在只有数字全不符合的就可以了棋盘上的形势的要求。

是不是正确的三个周期。。人是不能满意地看到每一行。每列装不满意,每个小3*3的格男人不能满足孩子。每个小3*3格子我是用求得左上角的方法来验证的。

事实上认为数独难另一个原因是记得他在编程之美上出现过。。

那上面讨论的主要是如何构造一个数独。详细记不太清楚了,印象最深的是,要想保证有解,最好的办法是先用置换法生成一个解,然后去掉这个解中的一些位置。

class Solution {
public:
bool isValidSudoku(vector<vector<char> > &board) {
bool vis[10];
for(int start=0;start<9;start++){
int i = start/3, j = start%3;
memset(vis, 0, sizeof(vis));
for(int k=0;k<9;k++){
int ii=i*3+k/3, jj=j*3+k%3;
if(board[ii][jj] == '.')
continue;
if(vis[board[ii][jj]-'0'])
return false;
else
vis[board[ii][jj]-'0'] = 1;
}
}
for(int i=0;i<9;i++){
memset(vis, 0, sizeof(vis));
for(int j=0;j<9;j++){
if(board[i][j]=='.')
continue;
if(vis[board[i][j]-'0'])
return false;
vis[board[i][j]-'0'] = 1;
}
}
for(int i=0;i<9;i++){
memset(vis, 0, sizeof(vis));
for(int j=0;j<9;j++){
if(board[j][i]=='.')
continue;
if(vis[board[j][i]-'0'])
return false;
vis[board[j][i]-'0'] = 1;
}
}
return true;
}
};

版权声明:本文博主原创文章,博客,未经同意不得转载。

leetcode先刷_Valid Sudoku的更多相关文章

  1. [LeetCode] 036. Valid Sudoku (Easy) (C++)

    指数:[LeetCode] Leetcode 解决问题的指数 (C++/Java/Python/Sql) Github: https://github.com/illuz/leetcode 036. ...

  2. LeetCode:36. Valid Sudoku,数独是否有效

    LeetCode:36. Valid Sudoku,数独是否有效 : 题目: LeetCode:36. Valid Sudoku 描述: Determine if a Sudoku is valid, ...

  3. [leetcode]_Valid Sudoku

    中间被启程日本的面试弄的没有静下心来复习算法.这样不好,基本功是硬道理.逐步恢复刷题. 题目:给一个数独(九宫格)中的一些数字,判断该数独是否有效. 即按照数独的规则,判断其行.列.小九格中是否有重复 ...

  4. Leetcode 笔记 36 - Sudoku Solver

    题目链接:Sudoku Solver | LeetCode OJ Write a program to solve a Sudoku puzzle by filling the empty cells ...

  5. [Leetcode][Python]37: Sudoku Solver

    # -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com' 37: Sudoku Solverhttps://oj.leetcode.co ...

  6. [LeetCode] 36. Valid Sudoku 验证数独

    Determine if a 9x9 Sudoku board is valid. Only the filled cells need to be validated according to th ...

  7. LeetCode 36 Valid Sudoku

    Problem: Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board ...

  8. 【leetcode】Valid Sudoku

    题目简述: Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board cou ...

  9. [leetcode]算法题目 - Sudoku Solver

    最近,新加坡总理李显龙也写了一份代码公布出来,大致瞧了一眼,竟然是解数独题的代码!前几天刚刚写过,数独主要算法当然是使用回溯法.回溯法当时初学的时候在思路上比较拧,不容易写对.写了几个回溯法的算法之后 ...

随机推荐

  1. logback--How do I configure an AsyncAppender with code? 转载

    原文地址:https://github.com/tony19/logback-android/issues/54 Please provide an example of how to configu ...

  2. ubuntu, 修改hosts文件

    介绍下ubuntu下修改host实现域名指向本地的方法. Ubuntu系统的Hosts只需修改/etc/hosts文件,在目录中还有一个hosts.conf文件,刚开始还以为只需要修改这个就可以了,结 ...

  3. 每天五个java相关面试题(3)

    1. Servlet的生命周期是什么? 答: 第一次请求: 构造方法->init() -> service() -> doGet()/doPost() 以后的请求:service() ...

  4. struts2--笔记(一)

    1.什么是struts2? 框架是一些已经写好的代码,一般情况下于产品是无关的,可以提高效率. 2.javaEE的三层结构:表现层.业务层.持久层组成,struts是变现层的一个框架结构,分成结构的方 ...

  5. ZOJ 2770 Burn the Linked Camp 差分约束 ZOJ排名第一~

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1770 题目大意: 陆逊为了火烧连营七百里,派出了间谍刺探敌情,得之刘备的军营以 ...

  6. 9.1 Binder系统_C程序示例_框架分析和编写程序

    IPC : Inter-Process Communication, 进程间通信 A进程把数据原原本本的发给B,这就是IPC RPC : Remote Procedure Call, 远程过程调用 A ...

  7. 8.4 Android灯光系统_源码分析_电池灯

    电池灯的Java代码在batteryservice.java中 电池的状态电量等信息由驱动获得,但驱动不会主动做这些事情,因此肯定有个App调用驱动程序读取电池信息,称这个App为A应用. 还有个Ap ...

  8. OC学习篇之---归档和解挡

    今天我们来看一下OC中的一个重要知识点:归档 OC中的归档就是将对象写入到一个文件中,Java中的ObjectInputStream和ObjectOutputStream来进行操作的.当然在操作的这些 ...

  9. 账号被盗!请勿在CSDN,回复不论什么消息。

    账号被盗!请勿在CSDN,回复不论什么消息.

  10. Topological Spaces(拓扑空间)

    拓扑空间的定义有多种形式,通过 open sets(开集)的形式定义是最为常见的拓扑空间定义形式. 1. 通过开集(open sets)定义 拓扑空间由一个有序对 (X,τ) 表示,X 表示非空集合, ...