当前位置: 首页 > news >正文

leetcode先刷_Valid Sudoku

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

是不是正确的三个周期。。人是不能满意地看到每一行。每列装不满意,每个小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;
    }
};


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

相关文章:

  • [译] 怎样写一个基础的编译器
  • 攻城记:Thinkphp框架的项目规划总结和踩坑经验
  • POJ 3421 X-factor Chains(构造)
  • Apache Tez 介绍(译)
  • LinkedList的用法小结
  • 在linux下配置静态IP
  • TotoiseSVN基本用法
  • android studio 无法在可视化页面预览布局文件
  • ubuntu php mysql
  • 这些年,这些挖掘机算法,这些反思
  • linux系统中cut sort tee 和uniq命令的使用
  • LVM的使用(二)
  • 【Spring学习笔记-6】关于@Autowired与@Scope(BeanDefination.SCOPE_PROTOTYPE)
  • Java:多态性
  • WCF bindings comparison z
  • JavaScript 如何正确处理 Unicode 编码问题!
  • Java 最常见的 200+ 面试题:面试必备
  • javascript 哈希表
  • Netty 4.1 源代码学习:线程模型
  • Promise面试题2实现异步串行执行
  • PV统计优化设计
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Redash本地开发环境搭建
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • spring cloud gateway 源码解析(4)跨域问题处理
  • Theano - 导数
  • use Google search engine
  • Vue官网教程学习过程中值得记录的一些事情
  • 基于游标的分页接口实现
  • 模型微调
  • 爬虫模拟登陆 SegmentFault
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 使用putty远程连接linux
  • 新书推荐|Windows黑客编程技术详解
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 阿里云服务器购买完整流程
  • ${ }的特别功能
  • (BFS)hdoj2377-Bus Pass
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (算法设计与分析)第一章算法概述-习题
  • (学习日记)2024.01.09
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • .NET 常见的偏门问题
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .net经典笔试题
  • .net企业级架构实战之7——Spring.net整合Asp.net mvc
  • ::before和::after 常见的用法
  • @EnableConfigurationProperties注解使用
  • @JsonSerialize注解的使用
  • [ vulhub漏洞复现篇 ] Jetty WEB-INF 文件读取复现CVE-2021-34429
  • [2017][note]基于空间交叉相位调制的两个连续波在few layer铋Bi中的全光switch——