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

37. Sudoku Solver

题目描述

37. Sudoku Solver

回溯

class Solution {vector<vector<bool>> row_used;vector<vector<bool>> col_used;vector<vector<bool>> box_used;public:void solveSudoku(vector<vector<char>>& board) {row_used.resize(9,vector<bool>(9,false));col_used.resize(9,vector<bool>(9,false));box_used.resize(9,vector<bool>(9,false));for(int row= 0;row < 9;row++){for(int col = 0;col < 9;col++){if(board[row][col] != '.'){int digit = board[row][col] - '0' -1;row_used[row][digit] = true;col_used[col][digit] = true;box_used[(row/3)*3 + col/3][digit] = true;}}}backtrack(board);}bool backtrack(vector<vector<char>>& board){for(int row = 0;row < 9;row++){for(int col = 0;col < 9;col++){if(board[row][col] != '.')continue;for(int digit = 0;digit<9;digit++){if(row_used[row][digit])continue;if(col_used[col][digit])continue;if(box_used[(row/3)*3+ col/3][digit])continue;row_used[row][digit] = true;col_used[col][digit] = true;box_used[(row/3)*3+ col/3][digit] = true;board[row][col] = '0'+ digit + 1;if(backtrack(board)) return true;board[row][col] = '.';row_used[row][digit] = false;col_used[col][digit] = false;box_used[(row/3)*3+ col/3][digit] = false;}return false;}}return true;}
};
http://www.dtcms.com/a/224069.html

相关文章:

  • uniapp与微信小程序开发平台联调无法打开IDE
  • [USACO1.5] 八皇后 Checker Challenge Java
  • 业界宽松内存模型的不统一而导致的软件问题, gcc, linux kernel, JVM
  • 【KWDB 创作者计划】_再热垃圾发电汽轮机仿真与监控系统:KaiwuDB 批量插入10万条数据性能优化实践
  • 2.4 TypeScript 中的展开运算符
  • 打造苹果级视差滚动动画:现代网页滚动动画技术详解
  • STM32入门教程——LED闪烁LED流水灯蜂鸣器
  • 【清晰教程】查看和修改Git配置情况
  • Java中Redis面试题集锦(含过期策略详解)
  • 科普:Linux `su` 切换用户后出现 `$` 提示符,如何排查和解决?
  • 论文笔记: Urban Region Embedding via Multi-View Contrastive Prediction
  • leetcode付费题 353. 贪吃蛇游戏解题思路
  • 2025年- H61-Lc169--74.搜索二维矩阵(二分查找)--Java版
  • 【技能拾遗】——家庭宽带单线复用布线与配置(移动2025版)
  • 计算机视觉与深度学习 | 基于Matlab的门禁指纹识别与人脸识别双系统实现
  • 关于TongWeb数据源兼容mysql驱动的注意事项
  • CSS专题之层叠上下文
  • 【前端】SPA v.s. MPA
  • vue3 基本语法 父子关系
  • 设计模式——装饰器设计模式(结构型)
  • HiveSQL语法全解析与实战指南
  • 【大模型部署】mac m1本地部署 ChatGLM3-6B 超详细教程
  • 跟单业务和量化交易业务所涉及到的设计模式
  • 性能优化 - 理论篇:性能优化的七类技术手段
  • C++旅行预算规划 全国信息素养大赛复赛决赛 C++小学/初中组 算法创意实践挑战赛 内部集训模拟题详细解析
  • C++ - STL #什么是STL #STL的版本 #闭源开源 #STL的六大组件
  • 题解:洛谷 P12672 「LAOI-8」近期我们注意到有网站混淆视听
  • Wireshark 使用教程:让抓包不再神秘
  • DeepSeek-R1-0528,官方的端午节特别献礼
  • Go语言中的布尔类型详解