洛谷P1784 数独 题解 题目概述给定一个数独求最终填好的数独。保证有唯一解。思路拆分数独的要求有三个:行列九宫格无重复数字。我们只用dfs搜索每一个点就行了。由于整个数独可以划分为9个九宫格在处理九宫格时我们可以将其看作一个整体如下图1,11,21,32,22,22,33,13,23,3分析每个九宫格对应的下标后我们就可以发现若当前点坐标为i,j则它位于c[i/3][j/3]这个九宫格内。至于查重就更简单了把c开到三维第三维存数据。行、列处理很简单此处不再多说核心代码注释#includebits/stdc.husingnamespacestd;inta[10][10];boolh[10][10];//处理行booll[10][10];//处理列boolc[5][5][10];//处理九宫格vectorpairint,intb;boolcheck(intr,intx,inti){return!h[r][i]!l[x][i]!c[r/3][x/3][i];//检查当前位置是否可行}voiddfs(intidx){if(idx(int)b.size())//递归终止条件{for(inti0;i9;i){for(intj0;j9;j){couta[i][j] ;//输出}coutendl;}exit(0);//注意此处要直接退出不能用return,否则dfs会继续搜索其他分支}intrb[idx].first;intxb[idx].second;for(inti1;i9;i){if(check(r,x,i)){a[r][x]i;h[r][i]l[x][i]c[r/3][x/3][i]true;//假设填这个数dfs(idx1);a[r][x]0;h[r][i]l[x][i]c[r/3][x/3][i]false;//回溯}}}intmain(){for(inti0;i9;i){for(intj0;j9;j){cina[i][j];if(a[i][j]!0){h[i][a[i][j]]l[j][a[i][j]]c[i/3][j/3][a[i][j]]true;}else{b.push_back({i,j});}}}dfs(0);return0;}

相关新闻

最新新闻

5分钟开启抖音智能下载之旅:从零到精通的douyin-downloader全指南

5分钟开启抖音智能下载之旅:从零到精通的douyin-downloader全指南

5分钟开启抖音智能下载之旅:从零到精通的douyin-downloader全指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fal…

2026/8/11 1:34:23
小米手表表盘设计终极指南:5步掌握Mi-Create免费工具

小米手表表盘设计终极指南:5步掌握Mi-Create免费工具

小米手表表盘设计终极指南:5步掌握Mi-Create免费工具 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 还在为小米手表找不到心仪的表盘而烦恼吗&…

2026/8/11 1:34:23
Git学习笔记:Git 底层存储设计 — blob、tree、commit、ref 如何组成一个版本控制系统

Git学习笔记:Git 底层存储设计 — blob、tree、commit、ref 如何组成一个版本控制系统

📝 本文首发于 栏轩阁 欢迎访问阅读原文,获取更好的阅读体验。 核心设计思想 Git 不是传统意义上的"版本控制系统",它的设计理念和 SVN、CVS 完全不同。 传统 VCS:基于 diff SVN 等系统记录的是"文件的变更&quo…

2026/8/11 1:34:23
由于原标题未给出任何可参考的明确活动信息,故无法确定具体活动来生成符合要求的标题。请提供包含活动资料的信息,例如有录网

由于原标题未给出任何可参考的明确活动信息,故无法确定具体活动来生成符合要求的标题。请提供包含活动资料的信息,例如有录网

在竞争激烈的国际教育市场中,有录网凭借其卓越的服务和深厚的行业积累,于2025福布斯中国教育峰会脱颖而出,荣获“留学出国服务影响力品牌”奖项。这一荣誉不仅是对有录网过往成绩的高度认可,更引发了我们对其服务质量的深入探究&a…

2026/8/11 1:34:23
2026天津注册公司代理记账一站式哪家靠谱?

2026天津注册公司代理记账一站式哪家靠谱?

想在天津把公司注册和后续代理记账交给同一家机构打理,不少创业者最担心的是中途换人、事项脱节,钱花出去了却没人接着办。围绕"天津注册公司加代理记账一站式服务哪家靠谱"这个问题,本文从企业全生命周期的连续性出发,…

2026/8/11 1:34:23
从FORM取数据

从FORM取数据

1.知道FORM名称,查询出具体挂在什么职责下,要求通过查询结果可以一步步展开对应职责直接找到该FORM,输入条件为FORM名称--1 SELECT form.form_name,--form.form_id,--func.function_id,--func.function_name,--menu.MENU_ID,menu.PROMPT,resp…

2026/8/11 1:29:22