惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
量子位
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
博客园 - 聂微东
aimingoo的专栏
aimingoo的专栏
Microsoft Security Blog
Microsoft Security Blog
U
Unit 42
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog

丘卡饮品店

小马入坑的东扯西扯 网络上的物是人非 数独恶魔城——精雕细琢的谜题大作 tee 心协力,tee 乐无穷——DDNet 入坑回忆 游戏推荐:图灵完备 「幻想の杂谈」放置游戏,真的“放置”吗? 找实习的心路经历 我与空竹的故事 这几年折腾博客的总结 本站 CDN 被盗刷 高性能计算课程作业 华为软件精英挑战赛感想 时间与陪伴 博客今后的方向 游戏推荐:Screeps QQ 机器人搭建体验 关于最近的一些事情 计算思维 记一次博客迁移历程 选择
数独笔记:XYZ 环
Zerol Acqua · 2025-11-07 · via 丘卡饮品店

发表于|更新于|杂七杂八

|总字数:978|阅读时长:3分钟|浏览量:

这篇笔记源于小向动态链中关于动态环部分的讲解:动态环的删数分析。动态环由于存在分支条件,因此并不是所有的弱链都可以进行删数的。所以动态环分为全环和半环,分别对应全部弱链/部分弱链能进行删数。具体怎么判断一个动态环是全环还是半环,可以通过删数分析得到。当然这篇笔记的主角并不是删数分析,也不是讲是全环的绽放,而是既有可能是全环也有可能是半环的 XYZ 环。

首先是 XYZ 半环,如图所示 XYZ 半环只有 XYZ-Wing 的两个分支(不是动态链分支,而是 XYZ -Wing 讨论拐点不同可能性的那俩分支)能删数,删数分别是 XY 两个数(XYZ-Wing 中除了 Z 之外的那俩)。XYZ 半环的特征是在 XYZ-Wing 的结构上,多了一个强链关系连接到 XYZ-Wing 两端分支的 Z (XYZ-Wing 结构中交集删除的那个数)上。

下图中,Z 为 5,X 和 Y 为 1 和 7

XYZ 半环的特征和删数

然后,这部分才是笔记的重点。既然 XYZ 半环是动态环,那怎么看出来它是动态环?看链时,Z(即 XYZ-Wing 中交集删的那个数)不是做为动态环假设分支的起点,而是假设后一个分支。即讨论起点是 X/Y,分叉是 Y/X 和 Z。它的环主体是在同一行或同一列上(只涉及两个单元格),且有两种看环的视角。

下图中,Z 为 5,X 和 Y 为 1 和 7

[{"url":"https://cdn.zerolacqua.top/images/blogs/sudoku-notes-xyz-ring/2.png","alt":"XYZ 半环结构 1","title":""},{"url":"https://cdn.zerolacqua.top/images/blogs/sudoku-notes-xyz-ring/3.png","alt":"XYZ 半环结构 2","title":""}]

左图视角,动态分支在 r3c6 分开,在 r9c6 合并,尤里卡记号如下:

1r3c6:
=7r3c6-(7=5)r3c2-5r8c2=5r9c1
=5r3c6
-(5=1)r9c6-1r3c6

右图视角,动态分支在 r3c6 分开,在 r3c2 合并,尤里卡记号如下:

7r3c6:
=1r3c6-(1=5)r9c6-5r9c1=5r8c2
=5r3c6
-(5=7)r3c2-7r3c6:

形状确实很怪异,而小向的教程中没画出链结构硬控了我好一段时间。有意思的是这个 XYZ 半环有两种看环的视角,每个视角下,环主体刚好在 XYZ-Wing 两个分支的其中一个上,所以不考虑删数分析只看主体上的弱链删数的话,这两个视角刚好各对一个 XYZ-Wing 分支进行了删数(毕竟这个结构是对称的,XY 这两个数逻辑上是等价的,X 有动态环视角,那 Y 也一定有动态环视角)。删数的结果也恰好说明了,即使是半环,也不一定只有环主体上的(非动态部分)弱链才能删数。

接下来 XYZ 全环就好说了,就不放尤里卡记号了。如图所示 XYZ 全环下所有弱链都能进行删数。特征很明显,XYZ-Wing 加上一个强链关系,且强链关系除了像半环一样,连接到 XYZ-Wing 分支两端的 Z (XYZ-Wing 结构中交集删除的那个数)中。同时,强链关系还连接了 XYZ-Wing 的拐点和分支端点上的 Z。这里给出 XYZ 全环的样子,它虽然是动态环,但弱链确实都可以删数。关于全环的讲解,小向的教程已经说得很清楚了,我就不多赘述了。

下图中,Z 为 2,X 和 Y 为 5 和 7

[{"url":"https://cdn.zerolacqua.top/images/blogs/sudoku-notes-xyz-ring/4.png","alt":"XYZ 全环的观察和删数","title":""},{"url":"https://cdn.zerolacqua.top/images/blogs/sudoku-notes-xyz-ring/5.png","alt":"XYZ 全环结构","title":""}]

以上便是个人的一点小小心得,如有错漏请多指教!本文配图由小向的 Sudoku Studio 生成。