LintCode 802. 数独(回溯)/ LeetCode 37. 解数独

1. 题目

编写一个程序,通过填充空单元来解决数独难题。
空单元由数字0表示。
你可以认为只有一个唯一的解决方案。
在这里插入图片描述
LeetCode 37 题类似,把 int 改成 char,注意转换

2. 解题

  • 行、列、小9宫格内 1-9 都只出现一次
  • 暴力回溯,坐标转换
class Solution {vector<vector<int>> ans;
public:void solveSudoku(vector<vector<int>> &b) {dfs(b,0);b = ans;}void dfs(vector<vector<int>> &b, int idx){if(idx > 80){ans = b;return;}int i = idx/9, j = idx%9;//idx是序号,转换成行列标号if(b[i][j] != 0)dfs(b,idx+1);//数字是已给的,跳过else{for(int k = 1; k <= 9; ++k){	//遍历9个数字if(isok(b,i,j,k)){	//数字 k 在当前格子合法b[i][j] = k;dfs(b,idx+1);b[i][j] = 0;}}}}bool isok(vector<vector<int>> &b, int i, int j, int& num){	int box_i, box_j;box_i = i/3, box_j = j/3;//行列坐标算出小9宫格的坐标for(int k = 0; k < 9; ++k){	//遍历9个格子,行的,列的,9 宫格内的,都不能出现过 numif(b[i][k]==num || b[k][j]==num || b[box_i*3+k/3][box_j*3+k%3]==num)return false;}return true;}
};

100% 数据通过测试
总耗时 273 ms
您的提交打败了 55.71% 的提交!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477004.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

完爆GPT3、谷歌PaLM!检索增强模型Atlas刷新知识类小样本任务SOTA

文 | 小戏不知不觉间&#xff0c;大模型小样本成为了小样本学习领域的主流打法&#xff0c;在许多的任务背景下&#xff0c;一套通用的思路是先标注小数据样本&#xff0c;再从预训练大模型的基础上使用小数据样本进行训练。尽管如我们所见&#xff0c;大模型在一众小样本学习的…

简单的分页类

<% LanguageVBScript %><% Option Explicit %><SCRIPT LANGUAGEVBScript RUNATSERVER> 确保引用 ADO Typelib 或使用 ADOVBS.Inc Dim iPageNum, iRowsPerPage Main Sub Main() Dim rst Dim sSQL, sConnString If Request.QueryString("iPageNu…

开源:Swagger Butler 1.1.0发布,利用ZuulRoute信息简化配置内容

Swagger Butler是一个基于Swagger与Zuul构建的API文档汇集工具。通过构建一个简单的Spring Boot应用&#xff0c;增加一些配置就能将现有整合了Swagger的Web应用的API文档都汇总到一起&#xff0c;方便查看与测试。 项目地址 Github&#xff1a;https://github.com/dyc87112/…

LeetCode 10. 正则表达式匹配(递归/DP)

文章目录1. 题目2. 解题2.1 递归2.2 DP1. 题目 给你一个字符串 s 和一个字符规律 p&#xff0c;请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 . 匹配任意单个字符* 匹配零个或多个前面的那一个元素 所谓匹配&#xff0c;是要涵盖 整个 字符串 s的&#xff0c;而不…

.net 页面框架的层次问题,嵌套问题

第一层&#xff1a;Form1&#xff1a;<form id"Form1" runat"server">第二层&#xff1a;才是我们拖放的控件。<asp:TextBox id"TextBox1" runat"server"></asp:TextBox>一般来说就只有这两层了。但是我们想要控件嵌…

3000块能买AAAI的Strong Accept?

编 | Aeneas 好困源 | 新智元最近&#xff0c;知乎上爆出一张AI投稿群的匿名聊天截图&#xff0c;网友讨论「加群互相bid」&#xff0c;还说3000块就可以买到一个AAAI的「strong accept」。正值AAAI 2023论文截止提交之际&#xff0c;知乎上突然出现了一张AI投稿群的匿名聊天截…

Spring Boot中使用MongoDB的连接池配置

因为今天开发遇到了性能问题&#xff0c;可能与MongoDB的连接有关&#xff0c;所以稍稍深入看了一下&#xff0c;正好搜到原来有人写过这篇相关的内容&#xff0c;所以转载过来。回头有时间可以写个扩展到SpringForAll里&#xff0c;主体思路还是一样的。感谢这位美女程序媛的文…

LeetCode 409. 最长回文串(计数)

1. 题目 给定一个包含大写字母和小写字母的字符串&#xff0c;找到通过这些字母构造成的最长的回文串。 在构造过程中&#xff0c;请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。 注意: 假设字符串的长度不会超过 1010。 示例 1: 输入: "abccccdd" 输出…

又一名视觉大牛从大厂离开!阿里达摩院 XR 实验室负责人谭平离职

文 | 王玥编 | 陈彩娴源 | AI科技评论AI科技评论获悉&#xff0c;阿里巴巴达摩院 XR 实验室负责人谭平已于近日离职。谭平曾受邀担任国际顶级学术会议CVPR、SIGGRAPH、IROS领域主席&#xff0c;是3D视觉领域的标杆人物。谭平于2019年9月入职阿里人工智能实验室担任计算机视觉首…

【小马哥】Spring Boot系列讲座

这里推荐一个不错的Spring Boot系列讲座&#xff0c;讲师简介如下&#xff1a; 小马哥&#xff0c;阿里巴巴技术专家&#xff0c;从事十余年Java EE 开发&#xff0c;国内微服务技术讲师。目前主要负责微服务技术推广、架构设计、基础设施、迁移等。重点关注云计算、微服务以及…

程序员面试金典 - 面试题 03.03. 堆盘子 (vector(stack))

1. 题目 堆盘子。设想有一堆盘子&#xff0c;堆太高可能会倒下来。因此&#xff0c;在现实生活中&#xff0c;盘子堆到一定高度时&#xff0c;我们就会另外堆一堆盘子。 请实现数据结构SetOfStacks&#xff0c;模拟这种行为。SetOfStacks 应该由多个栈组成&#xff0c;并且在…

事件冒泡控件示例(转载)

.NET Framework 开发员指南 事件冒泡ASP.NET 页框架提供一种称为“事件冒泡”的技术&#xff0c;允许子控件将事件沿其包容层次结构向上传播。事件冒泡允许在控件层次结构中更方便的位置引发事件&#xff0c;并且允许将事件处理程序附加到原始控件以及公开冒泡的事件的控件上。…

Oracle 大规模裁员进行时:营收暴跌 28%,数据库地位被侵蚀

源 | InfoQ裁员潮席卷国外大厂&#xff0c;数据库巨头 Oracle 也不例外。“我的经理给我打了 3 分钟的电话。毫无情感地告诉我&#xff1a;你的职位被取消了&#xff0c;人力资源部稍后会把细节发给你&#xff0c;再见。”“我在 CX 营销部门工作了 8 年。HR 昨天下午打电话给我…

Spring Boot中使用RabbitMQ

很久没有写Spring Boot的内容了&#xff0c;正好最近在写Spring Cloud Bus的内容&#xff0c;因为内容会有一些相关性&#xff0c;所以先补一篇关于AMQP的整合。 Message Broker与AMQP简介 Message Broker是一种消息验证、传输、路由的架构模式&#xff0c;其设计目标主要应用…

程序员面试金典 - 面试题 03.05. 栈排序(两栈)

1. 题目 栈排序。 编写程序&#xff0c;对栈进行排序使最小元素位于栈顶。 最多只能使用一个其他的临时栈存放数据&#xff0c;但不得将元素复制到别的数据结构&#xff08;如数组&#xff09;中。 该栈支持如下操作&#xff1a;push、pop、peek 和 isEmpty。当栈为空时&#…

大足石刻一日游

今天早上9点半从重庆出发&#xff0c;11点半到的目的地。玩了3个小时&#xff0c;下午5点又回来了。逛了一会儿&#xff0c;感觉被骗了&#xff0c;没多少东西嘛&#xff0c;好多石刻都被风化的差不多了&#xff0c;1个小时就出来了&#xff0c;80块的门票真“值”。下面是手机…

为什么说工作期间需要摸鱼?

文 | 梦晨(发自凹非寺)源 | 量子位一努力思考就会精神疲惫&#xff0c;学习工作一天之后只想无脑躺平。最新研究发现&#xff0c;这并不是你一个人的错&#xff0c;而是有着普遍的生理基础&#xff1a;思考时脑内会产生一种毒素&#xff0c;积累太多会破坏大脑功能&#xff0c;…

Spring boot中使用log4j记录日志

之前在Spring Boot日志管理 一文中主要介绍了Spring Boot中默认日志工具&#xff08;logback&#xff09;的基本配置内容。对于很多习惯使用log4j的开发者&#xff0c;Spring Boot依然可以很好的支持&#xff0c;只是需要做一些小小的配置功能。 引入log4j依赖 在创建Spring …

4.7 【共享源】流的生产者(二)

七,模式 流的模式决定了Screen如何使前台缓冲区可用。生产者通过调用screen_set_stream_property_iv()并设置SCREEN_PROPERTY_MODE属性来设置模式。有效模式如下: 7.1 SCREEN_STREAM_MODE_DEFAULT 如果生产者应用程序没有在流上明确设置 SCREEN_PROPERTY_MODE 属性,则 Sc…

程序员面试金典 - 面试题 03.06. 动物收容所(队列)

1. 题目 动物收容所。有家动物收容所只收容狗与猫&#xff0c;且严格遵守“先进先出”的原则。 在收养该收容所的动物时&#xff0c;收养人只能收养所有动物中“最老”&#xff08;由其进入收容所的时间长短而定&#xff09;的动物&#xff0c;或者可以挑选猫或狗&#xff08…