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

LeetCode36.Valid-Sudoku<有效的数独>

题目:

 

 

思路:

这题并不难,它类似于N皇后问题。在N皇后问题中,行,列,对角线,写对角线,都不能出现连续的皇后。

本题类似,不过他是行,列,还有一个BOX内。

image.png

 

看完问题就来了,Box非常不好写。

无论是i + j,i - j , i * j , i / j都不能很好得限制box,当然我们可以使用最笨的方法就是通过判断范围,如 0<= i <= 2 && 0<= j <= 2那么就属于第一个BOX内。但是这样太麻烦了,虽然是可行的。但是我没写,然后没想出来。。。。额,尴尬,,ԾㅂԾ,,

看完提示,发现i j 除于3就行了。 i/3 + j / 3这样是可以的。但是还可以简化。将它变为一维的。

  j / 3 + (i / 3) * 3 取决于i的大小 来决定处于第几层。

 

代码是:

//codeclass Solution {
public:bool isValidSudoku(vector<vector<char>>& board) {int hang[9][10]={0};int lie[9][10]={0};int box[9][10]={0};for(int i=0;i<9;i++){for(int j =0;j<9;j++){if(board[i][j]=='.') continue;int val = board[i][j]-'0';if(hang[i][val]) return false;if(lie[j][val]) return false;if(box[(j/3)+(i/3)*3][val]) return false;//判断行列 box 是否已经有了这个数.hang[i][val]=val;lie[j][val]=val;box[(j/3)+(i/3)*3][val]=val;//没有那就添加进去.}}return true;}
};

相关文章:

LeetCode36.Valid-Sudoku<有效的数独>

题目&#xff1a; 思路&#xff1a; 这题并不难&#xff0c;它类似于N皇后问题。在N皇后问题中&#xff0c;行&#xff0c;列&#xff0c;对角线&#xff0c;写对角线&#xff0c;都不能出现连续的皇后。 本题类似&#xff0c;不过他是行&#xff0c;列&#xff0c;还有一个B…...

Linux中的pause函数

2023年7月29日&#xff0c;周六上午 函数原型 在Linux中&#xff0c;pause()函数用于使当前进程暂停执行&#xff0c;直到接收到一个信号。 #include <unistd.h>int pause(void);pause()函数不接受任何参数。 通常&#xff0c;pause()函数用于编写简单的信号处理程序&…...

CommonCollections6链分析

前面和CC1一样 优点是不限制jdk版本和cc的版本 先开一个ChainedTransformer 然后创LazyMap 我们顺便执行一下避免上面写错 能弹计算器 没问题 后面就是CC6不同的地方了 我们需要一个TiedMapEntry 因为需要一个类调用了get方法 在TiedMapEntry的getValue()方法中调用了get()…...

优化基于tcp,socket的ftp文件传输程序

原始程序&#xff1a; template_ftp_server_old.py&#xff1a; import socket import json import struct import os import time import pymysql.cursorssoc socket.socket(socket.AF_INET, socket.SOCK_STREAM) HOST 192.168.31.111 PORT 4101 soc.bind((HOST,PORT)) p…...

MySQL 数据库 【增删查改(二)】

目录 一、表的设计 1、一对一 2、一对多 3、多对多 二、新增 三、查询 1、聚合查询 &#xff08;1&#xff09;聚合函数&#xff1a; &#xff08;2&#xff09; group by 子句 &#xff08;3&#xff09;having 2、联合查询 (1)内连接 (2)外连接 (3)自链接 (4)…...

力扣 -- 978. 最长湍流子数组

一、题目 二、解题步骤 下面是用动态规划的思想解决这道题的过程&#xff0c;相信各位小伙伴都能看懂并且掌握这道经典的动规题目滴。 三、参考代码 class Solution { public:int maxTurbulenceSize(vector<int>& nums) {int nnums.size();vector<int> f(n);…...

甘特图 Dhtmlx Gantt

介绍 在一些任务计划、日程进度等场景中我们会使用到甘特图&#xff0c;Dhtmlx Gantt 对于甘特图的实现支持很友好&#xff0c;文档API介绍全面&#xff0c;虽然增强版的收费&#xff0c;但免费版的足以够用。 官网&#xff1a;https://docs.dhtmlx.com/gantt/ 安装dhtml gannt…...

iOS 应用上架流程详解

iOS 应用上架流程详解 欢迎来到我的博客&#xff0c;今天我将为大家分享 iOS 应用上架的详细流程。在这个数字化时代&#xff0c;移动应用已经成为了人们生活中不可或缺的一部分&#xff0c;而 iOS 平台的 App Store 则是开发者们发布应用的主要渠道之一。因此&#xff0c;了解…...

Python入门【LEGB规则、面向对象简介、面向过程和面向对象思想、面向对象是什么? 对象的进化 、类的定义、对象完整内存结构 】(十三)

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱敲代码的小王&#xff0c;CSDN博客博主,Python小白 &#x1f4d5;系列专栏&#xff1a;python入门到实战、Python爬虫开发、Python办公自动化、Python数据分析、Python前后端开发 &#x1f4e7;如果文章知识点有错误…...

【消息中间件】原生PHP对接Uni H5、APP、微信小程序实时通讯消息服务

文章目录 视频演示效果前言一、分析二、全局注入MQTT连接1.引入库2.写入全局连接代码 二、PHP环境建立总结 视频演示效果 【uniapp】实现买定离手小游戏 前言 Mqtt不同环境问题太多&#xff0c;新手可以看下 《【MQTT】Esp32数据上传采集&#xff1a;最新mqtt插件&#xff08;支…...

【C语言初阶】指针篇—上

目录 1. 指针是什么&#xff1f;2. 指针和指针类型2.1 指针-整数2.2 指针的解引用 3. 野指针3.1 野指针成因1. 指针未初始化2. 指针越界访问3. 指针指向的空间释放 3.2 如何规避野指针 1. 指针是什么&#xff1f; 指针是什么&#xff1f; 指针理解的2个要点&#xff1a; > 1…...

基于FasterRCNN深度学习网络的车辆检测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022A 3.部分核心程序 ....................................................................... % 训练Faster R-…...

机器学习深度学习——多层感知机

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位即将上大四&#xff0c;正专攻机器学习的保研er &#x1f30c;上期文章&#xff1a;机器学习&&深度学习——感知机 &#x1f4da;订阅专栏&#xff1a;机器学习&&深度学习 希望文章对你们有所帮助 上一节…...

Django模型将模型注释同步到数据库

1、安装django-comment-migrate库 pip install django-comment-migrate 2、将库注册到settings.py文件中 INSTALLED_APPS [...django_comment_migrate, # 表注释... ] 3、加注释 3.1、给模型&#xff08;表&#xff09;加注释 在模型的class Meta中编辑 verbose_name&…...

STM32 Flash学习(二)

STM32F1的官方固件库操作FLASH的几个常用函数。这些函数和定义分布在源文件stm32f1xx_hal_flash.c/stm32f1xx_hal_flash_ex.c以及头文件stm32f1xx_hal_flash.h/stm32f1xx_hal_flash_ex.h中。 锁定解函数 对FLASH进行写操作前必须先解锁&#xff0c;解锁操作&#xff1a;在FLA…...

kotlin获取泛型集合的类型信息

通过 reified 关键字和内联函数来实现 inline fun <reified T> getClassFromList(list: List<T>): Class<T> {return T::class.java }fun main() {val list listOf("Hello", "World")val clazz getClassFromList(list)println(clazz)…...

AQS源码解析

关于 AQS&#xff0c;网上已经有无数的文章阐述 AQS 的使用及其源码&#xff0c;所以多这么一篇文章也没啥所谓&#xff0c;还能总结一下研究过的源码。源码解析和某某的使用&#xff0c;大概是互联网上 Java 文章中写得最多的主题了。 AQS AQS 是 AbstractQueuedSynchronize…...

关于在VS2017中编译Qt项目遇到的问题

关于在VS2017中编译Qt项目遇到的问题 【QT】VS打开QT项目运行不成功 error MSB6006 “cmd.exe”已退出,代码为 2。如何在VS2017里部署的Qt Designer上编辑槽函数 【QT】VS打开QT项目运行不成功 error MSB6006 “cmd.exe”已退出,代码为 2。 链接 如何在VS2017里部署的Qt Design…...

Python web实战 | 使用 Flask 实现 Web Socket 聊天室

概要 今天我们学习如何使用 Python 实现 Web Socket&#xff0c;并实现一个实时聊天室的功能。本文的技术栈包括 Python、Flask、Socket.IO 和 HTML/CSS/JavaScript。 什么是 Web Socket&#xff1f; Web Socket 是一种在单个 TCP 连接上进行全双工通信的协议。它是 HTML5 中的…...

Android10 Recovery系列(一)隐藏recovery菜单项

一 、背景 起因是遇到了一个隐藏删除recovery菜单项的需求。在寻找解决问题的时候,我经历了找到源码位置,调试修改,生效,思考是否可拓展,优化修改,符合要求的整个过程,下面简单分享一下。如果不想立即实现效果或者只想看解决方案,可以直接看总结那一个部分 二 、准备…...

DETR训练总找不到目标边界?手把手拆解Conditional DETR的cross-attention,教你精准定位

DETR训练中目标边界定位难题的深度解析与Conditional DETR实战指南 当你在训练DETR模型时&#xff0c;是否经常遇到模型在早期阶段难以准确捕捉目标边界的问题&#xff1f;比如大象的鼻子、斑马的蹄子这些关键部位总是模糊不清。这种现象背后隐藏着DETR架构中一个深层次的设计问…...

KaTrain围棋AI:5步开启专业级围棋训练新时代 [特殊字符]

KaTrain围棋AI&#xff1a;5步开启专业级围棋训练新时代 &#x1f3af; 【免费下载链接】katrain Improve your Baduk skills by training with KataGo! 项目地址: https://gitcode.com/gh_mirrors/ka/katrain 你是否渴望提升围棋水平&#xff0c;却苦于缺乏专业指导&am…...

Godot 4.3 RTS开发实战:事件驱动架构与指令队列优化

1. 这不是又一个“Hello World”教程&#xff1a;RTS游戏在Godot里到底难在哪&#xff1f;你点开过十几个“Godot RTS教程”&#xff0c;结果发现前两分钟还在画UI按钮&#xff0c;第三分钟就跳到“接下来我们用NavigationServer实现寻路”——然后卡住。你翻遍官方文档&#x…...

合同系统功能详解:相对方管理

上一期&#xff0c;我们讲解了合同系统的业务功用。本期开始&#xff0c;我们将逐一对合同系统的核心功能进行拆解&#xff0c;结合实际业务场景展开详细讲解。今天&#xff0c;我们重点介绍合同系统中的相对方管理功能。 在实际业务落地过程中&#xff0c;不同企业的经营业态…...

0 基础跨行斩获月薪 10k 实力远不及破局魄力

人生如同奔涌的比特流&#xff0c;暗礁与漩涡总在不经意间出现。 当挑战如恶意攻击般袭来&#xff0c;切莫因一时受阻而缴械投降。 那些在代码与协议中鏖战的日夜终将铸就铠甲&#xff0c;正如防火墙抵御入侵守护核心&#xff0c;只要目标坚定持续精进&#xff0c;终将在攻防…...

11. 架构:前端工程化与状态管理实战

写在前面: 如果说后端 MVT 引擎是 GIS 系统的“心脏”,那么前端就是它的“大脑”和“面孔”。在现代 WebGIS 开发中,如何优雅地管理复杂的图层状态、如何处理海量瓦片的渲染逻辑,是决定项目成败的关键。 今天,我们将深入 light-mvt-server 的前端核心,看看如何利用 Vite …...

洛圣都生存指南:YimMenu开源游戏增强工具与安全防护系统深度解析

洛圣都生存指南&#xff1a;YimMenu开源游戏增强工具与安全防护系统深度解析 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trendi…...

《CVPR2025-DEIM创新改进项目实战:从原理到部署的深度学习优化全攻略》019、TimeSformer-DEIM与SlowFast-DEIM

CVPR2025-DEIM创新改进项目实战:TimeSformer-DEIM与SlowFast-DEIM 一、从一次诡异的显存爆炸说起 去年年底,我在调试一个视频行为识别模型时遇到了一个让人抓狂的问题。模型用的是TimeSformer,输入是32帧224x224的视频片段,batch size设了8,按理说A100 80G应该绰绰有余。…...

家居用品展行业深度分析:格局、痛点与前景

家居用品展是家居产业的风向标与商贸核心枢纽&#xff0c;2026年行业正处于存量焕新、设计驱动、数智赋能的关键转型期。本文从发展现状、核心格局、痛点拆解、趋势机遇、前景预判五大维度&#xff0c;深度剖析家居用品展行业的底层逻辑与发展脉络&#xff0c;助力从业者把握行…...

将Claude Code编程助手无缝对接至Taotoken解决账号与Token限制

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 将Claude Code编程助手无缝对接至Taotoken解决账号与Token限制 对于依赖Claude Code进行编程辅助的开发者而言&#xff0c;遇到官方…...