DeepSeek能下围棋吗?(续)
休息了一下,接着琢磨围棋,其实前面一篇里的规则有个漏洞的,就是邻居关系定义有问题,先回顾一下游戏规则:
游戏规则
定义:
1.数字对,是指两个1到9之间的整数组成的有序集合。可与记为(m,n),如果m不等于n,那么认为(m,n)与(n,m)是两个不同的数字对。
2.游戏由两方组成,称为B方和W方,每一方拥有一个集合,称为B集合和W集合,集合中的元素是数字对,游戏开始时B集合和W集合都是空集合。
3.没有出现在B集合和W集合中的所有数字对构成一个K集合
4.两个数字对(m,n)和(a,b)邻居如果m和a只差1,或者n和b只差1,称为两个数字对是邻居关系
5.具有邻居关系的两个数字对有粘连关系,如果A与B有粘连关系,B与C也有粘连关系,称A与C也有粘连关系
6.根据粘连关系把B集合和W集合分割成若干子集合,称为粘连块
7.一个粘连块中每个数字对的邻居如果是K集合的元素,称这个数字对是该粘连块的气对
8.一个粘连块的所有气对构成的集合称为气集合
9.一个粘连块的气集合中的元素个数称为这个粘连块的气数
定义4中说
两个数字对(m,n)和(a,b)邻居如果m和a只差1,或者n和b只差1,称为两个数字对是邻居关系,
其实不够严密,我们来问问deepseek,重启一个对话(这么折腾deepseek,真是罪过啊),输入规则:
游戏规则
定义:
1.数字对,是指两个1到9之间的整数组成的有序集合。可与记为(m,n),如果m不等于n,那么认为(m,n)与(n,m)是两个不同的数字对。
2.游戏由两方组成,称为B方和W方,每一方拥有一个集合,称为B集合和W集合,集合中的元素是数字对,游戏开始时B集合和W集合都是空集合。
3.没有出现在B集合和W集合中的所有数字对构成一个K集合
4.两个数字对(m,n)和(a,b)邻居如果m和a只差1,或者n和b只差1,称为两个数字对是邻居关系
5.具有邻居关系的两个数字对有粘连关系,如果A与B有粘连关系,B与C也有粘连关系,称A与C也有粘连关系
6.根据粘连关系把B集合和W集合分割成若干子集合,称为粘连块
7.一个粘连块中每个数字对的邻居如果是K集合的元素,称这个数字对是该粘连块的气对
8.一个粘连块的所有气对的集合称为这个粘连块的气集
9.一个粘连块的气集合中的元素个数称为这个粘连块的气数
DeepSeek回答:
游戏规则解析
定义
- 数字对:由两个1到9之间的整数组成的有序集合,记为(m,n)。若m≠n,(m,n)与(n,m)视为不同的数字对。
- 游戏双方:B方和W方,各自拥有一个数字对集合,分别为B集合和W集合。游戏开始时,这两个集合均为空。
- K集合:包含所有未出现在B集合和W集合中的数字对。
- 邻居关系:两个数字对(m,n)和(a,b)是邻居,如果m与a或n与b的差为1。
- 粘连关系:若A与B是邻居,B与C也是邻居,则A与C也有粘连关系。
- 粘连块:根据粘连关系将B集合和W集合分割成的若干子集合。
- 气对:一个粘连块中的数字对,其邻居属于K集合。
- 气集合:一个粘连块中所有气对的集合。
- 气数:气集合中元素的数量。
游戏流程
- 初始状态:B集合和W集合为空,K集合包含所有可能的数字对。
- 轮流操作:B方和W方轮流选择一个数字对加入自己的集合,并从K集合中移除。
- 更新粘连块:每次操作后,重新计算B集合和W集合的粘连块。
- 计算气数:为每个粘连块计算气数,气数为0的粘连块将被移除。
示例

(这个图不是DeepSeek配的,是我为了方便看清配的)
假设当前B集合为{(1,1), (1,2)},W集合为{(2,2)},K集合为其他所有数字对。
- 粘连块:
- B集合的粘连块为{(1,1), (1,2)}。
- W集合的粘连块为{(2,2)}。
- 气对:
- B粘连块的气对为{(1,1), (1,2)},因为它们的邻居(1,3)和(2,2)在K集合中。
- W粘连块的气对为{(2,2)},因为它的邻居(2,1)和(2,3)在K集合中。
- 气数:
- B粘连块的气数为2。
- W粘连块的气数为1。
游戏结束条件
当某一方的粘连块气数为0时,该粘连块被移除,游戏继续进行,直到无法继续操作为止。
问,(1,1)和(2,9)是邻居关系吗?
根据定义,两个数字对 (m, n) 和 (a, b) 是邻居关系,当且仅当 m 和 a 的差为 1,或者 n 和 b 的差为 1。
对于 (1, 1) 和 (2, 9):- m = 1, a = 2,它们的差为 |1 - 2| = 1,满足条件。- n = 1, b = 9,它们的差为 |1 - 9| = 8,不满足条件。由于 m 和 a 的差为 1,因此 (1, 1) 和 (2, 9) 是邻居关系。
答案
是,(1,1) 和 (2,9) 是邻居关系。
这个肯定不对嘛!但是DeepSeek判断是对的,规则有问题。
邻居关系是很重要的关系,它关系到一块棋的气数,然而前面下棋过程似乎很正常,什么地方出问题了?
W粘连块的气对为{(2,2)},因为它的邻居(2,1)和(2,3)在K集合中。- W粘连块的气数为1。
这个判断很有问题,{(2,2)}的领居其实应该包括(2,1),(2,3),(1,2)和(3,2),其中除了(1,2)外都在K中,因此这个块的气数应该是3。
原因是气对这个定义也有问题,按说气对应该是:
. 气对:一个粘连块中的数字对,其邻居属于K集合。
这个定义有问题,应该将气集改成:
7.一个粘连块中每个数字对的邻居的集合的并集与K集合的交集称为该粘连块的气集
对邻居关系的定义改为
4…两个数字对(m,n)和(a,b),如果n与b一样而且m和a只差1,或者m与a一样而且n和b只差1,称这两个数字对是邻居关系
这样我们就得到了新版的游戏规则如下:
游戏规则
定义:
1.数字对,是指两个1到9之间的整数组成的有序集合。可与记为(m,n),如果m不等于n,那么认为(m,n)与(n,m)是两个不同的数字对。
2.游戏由两方组成,称为B方和W方,每一方拥有一个集合,称为B集合和W集合,集合中的元素是数字对,游戏开始时B集合和W集合都是空集合。
3.没有出现在B集合和W集合中的所有数字对构成一个K集合
4.两个数字对(m,n)和(a,b),如果n与b一样而且m和a只差1,或者m与a一样而且n和b只差1,称这两个数字对是邻居关系
5.具有邻居关系的两个数字对有粘连关系,如果A与B有粘连关系,B与C也有粘连关系,称A与C也有粘连关系
6.根据粘连关系把B集合和W集合分割成若干子集合,称为粘连块
7.一个粘连块中每个数字对的邻居的集合的并集与K集合的交集称为该粘连块的气集合
8.一个粘连块的气集合中的元素个数称为这个粘连块的气数
规则:
1.由B方先,W方后,交替选择一个K中的数字对加入到自己一方的集合中。
2.选择的数字对加入自己一方的集合后可能导致双方的粘连块有变化,如果变化后的某个粘连块的气数变为0,如果这个粘连块是对方的,可以将这个粘连块中的所有数字对从对方数字对集合中删除,
3.如果选择的数字对不能使对方的某个粘连块气数变成0,反而使自己一方的某个粘连块气数变成0,那这个数字对就不能选择。
4,某方选择的数字对导致对方被删除的数字对只有一个,这个数字对下一次对方不能选择
5,直到一方无法选择合法的数字对,此时游戏结束
6,结束是计算B集合中的数字对个数,收集B集合中所有数字对的邻居集合与K集合的交集中的数字对个数,两个数字加起来,称为B方的地盘数Bn,对W方也按相同的规则统计出W方地盘数Wn,如果Bn-Wn>3则称B方赢,否则称W方赢
把这个规则输入到DeepSeek中去,得到
游戏规则解析
定义
- 数字对:由两个1到9之间的整数组成的有序集合,记为(m,n)。若m≠n,则(m,n)与(n,m)视为不同的数字对。
- 游戏双方:B方和W方,各自拥有一个集合(B集合和W集合),初始为空。
- K集合:未出现在B集合和W集合中的所有数字对。
- 邻居关系:两个数字对(m,n)和(a,b),若n=b且|m-a|=1,或m=a且|n-b|=1,则称这两个数字对是邻居关系。
- 粘连关系:若A与B有邻居关系,B与C也有邻居关系,则A与C也有粘连关系。
- 粘连块:根据粘连关系将B集合和W集合分割成的若干子集合。
- 气集合:一个粘连块中每个数字对的邻居集合的并集与K集合的交集。
- 气数:气集合中的元素个数。
游戏规则
- 轮流选择:B方先手,W方后手,交替从K集合中选择一个数字对加入自己的集合。
- 粘连块变化:选择的数字对加入后,可能导致双方的粘连块发生变化。若某粘连块的气数变为0,且该粘连块属于对方,则将该粘连块中的所有数字对从对方集合中删除。
- 选择限制:若选择的数字对不能使对方的粘连块气数变为0,反而使自己的粘连块气数变为0,则该数字对不可选择。
- 删除限制:若某方选择的数字对导致对方被删除的数字对只有一个,则对方下一次不能选择该数字对。
- 游戏结束:当一方无法选择合法的数字对时,游戏结束。
- 胜负判定:计算B集合中的数字对个数,以及B集合中所有数字对的邻居集合与K集合的交集中的数字对个数,两者之和为B方的地盘数Bn。同理计算W方的地盘数Wn。若Bn - Wn > 3,则B方赢;否则,W方赢。
游戏流程示例
- 初始状态:B集合和W集合为空,K集合包含所有可能的数字对。
- B方选择:B方选择一个数字对加入B集合。
- W方选择:W方选择一个数字对加入W集合。
- 粘连块更新:每次选择后,更新双方的粘连块及其气数。
- 删除操作:若某粘连块气数变为0,且属于对方,则删除该粘连块中的所有数字对。
- 选择限制:确保选择的数字对不会使自己的粘连块气数变为0。
- 游戏结束:当一方无法选择合法的数字对时,游戏结束,计算地盘数决定胜负。
策略建议
- 控制气数:尽量选择能使对方粘连块气数减少的数字对。
- 保护粘连块:避免选择会使自己粘连块气数减少的数字对。
- 限制对方选择:通过删除操作限制对方的选择范围。通过以上规则和策略,玩家可以更好地理解和参与这个游戏。
它不举例了,只能先问问看邻居关系,看有没有改过来:
请问(1,1)和(2,9)是邻居关系吗?
问题回顾
我们需要判断数字对 (1,1) 和 (2,9) 是否是邻居关系。根据游戏规则,两个数字对 (m,n) 和 (a,b) 是邻居关系,当且仅当满足以下条件之一:
- n = b 且 |m - a| = 1
- m = a 且 |n - b| = 1
分析步骤
- 提取数字对: - 第一个数字对:(m, n) = (1, 1) - 第二个数字对:(a, b) = (2, 9)
- 检查第一个条件:
- n = b:1 ≠ 9,不满足。
- 因此,第一个条件不成立。
- 检查第二个条件:
- m = a:1 ≠ 2,不满足。
- 因此,第二个条件也不成立。
结论
由于两个条件均不满足,数字对 (1,1) 和 (2,9) 不是邻居关系。
最终答案
(1,1) 和 (2,9) 不是邻居关系。
这次判断对了,下面来下几步棋,看看是否有问题:
请你做裁判我们来做玩这个游戏
好的!我很乐意担任裁判,帮助你们进行这个游戏。以下是游戏的初始设置和规则回顾,方便你们开始游戏。
游戏初始设置
- B集合:空集合
- W集合:空集合
- K集合:包含所有可能的数字对(即从 (1,1) 到 (9,9) 的所有有序对,共 81 个数字对)。
- 当前回合:B方先手。
游戏规则回顾
- 轮流选择:B方和W方交替从K集合中选择一个数字对,加入自己的集合。
- 邻居关系:两个数字对 (m,n) 和 (a,b) 是邻居关系,当且仅当:
- n = b 且 |m - a| = 1,或
- m = a 且 |n - b| = 1。
- 粘连块与气数:
- 粘连块是由邻居关系连接的子集合。
- 气数是粘连块的邻居数字对中属于K集合的数量。
- 删除规则:
- 如果某方选择的数字对导致对方的某个粘连块气数变为0,则删除该粘连块中的所有数字对。
- 如果选择的数字对导致自己的粘连块气数变为0,则该选择无效,需重新选择。
- 限制规则:
- 如果某方选择的数字对导致对方被删除的数字对只有一个,则对方下一次不能选择该数字对。
- 游戏结束:
- 当一方无法选择合法的数字对时,游戏结束。 - 计算双方的地盘数(Bn 和 Wn),地盘数 = 自己集合中的数字对个数 + 自己集合中所有数字对的邻居与K集合的交集个数。 - 若 Bn - Wn > 3,B方赢;否则,W方赢。
游戏流程
- B方先手:请B方选择一个合法的数字对加入B集合。
- 更新K集合:将选择的数字对从K集合中移除。
- 检查粘连块和气数:
- 更新B集合和W集合的粘连块。
- 检查是否有粘连块的气数变为0,触发删除规则。
- W方回合:W方选择一个合法的数字对加入W集合。
- 重复上述步骤,直到一方无法选择合法的数字对,游戏结束。
示例
假设B方选择 (1,1):
- B集合:{(1,1)}
- K集合:移除 (1,1)
- 检查粘连块:B集合的粘连块为 {(1,1)},其邻居为 (2,1) 和 (1,2)。
- 气数:如果 (2,1) 和 (1,2) 仍在K集合中,则气数为2。接下来轮到W方选择。
开始游戏
请B方选择一个数字对(例如 (1,1)),并告诉我你的选择。我会更新游戏状态并继续裁判!


我们来走这个星位小飞挂角托连扳定式,但是第9步本来应该走白第10步位置,我们故意走错一步。来考察一下规则的反应。
下面我们按上面的定式来走,走一步分析一步先看是否有问题。
(4,4)
好的!B方选择了 (4,4)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4)}
- W集合:{}
- K集合:移除了 (4,4),剩余所有数字对(共 80 个)。
- 粘连块与气数:
- B集合的粘连块为 {(4,4)}。
- (4,4) 的邻居为 (3,4)、(5,4)、(4,3)、(4,5)。
- 气数为这些邻居中仍在K集合的数量。目前 (3,4)、(5,4)、(4,3)、(4,5) 都在K集合中,因此气数为 4。
这一步没有看出什么问题,以后没问题就接着下。
下一步
轮到 W方 选择一个合法的数字对加入W集合。请W方选择一个数字对(例如 (3,4)),并告诉我你的选择。我会继续更新游戏状态!
(6,3)
好的!W方选择了 (6,3)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4)}
- W集合:{(6,3)}
- K集合:移除了 (4,4) 和 (6,3),剩余所有数字对(共 79 个)。
- 粘连块与气数:
- B集合的粘连块:{(4,4)}。
- 邻居为 (3,4)、(5,4)、(4,3)、(4,5)。
- 这些邻居仍在K集合中,气数为 4。
- W集合的粘连块:{(6,3)}。
- 邻居为 (5,3)、(7,3)、(6,2)、(6,4)。
- 这些邻居仍在K集合中,气数为 4。
下一步
轮到 B方 选择一个合法的数字对加入B集合。请B方选择一个数字对(例如 (5,4)),并告诉我你的选择。我会继续更新游戏状态!
(3,6)
好的!B方选择了 (3,6)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4), (3,6)}
- W集合:{(6,3)}
- K集合:移除了 (4,4)、(6,3) 和 (3,6),剩余所有数字对(共 78 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 和 {(3,6)} 目前没有邻居关系,因此是两个独立的粘连块。
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,3)、(4,5),气数为 4。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- W集合的粘连块:
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 4。
下一步
轮到 W方 选择一个合法的数字对加入W集合。请W方选择一个数字对(例如 (5,3)),并告诉我你的选择。我会继续更新游戏状态!
(4,3)
好的!W方选择了 (4,3)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4), (3,6)}
- W集合:{(6,3), (4,3)}
- K集合:移除了 (4,4)、(6,3)、(3,6) 和 (4,3),剩余所有数字对(共 77 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 和 {(3,6)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,5),气数为 3(因为 (4,3) 已被移除)。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- W集合的粘连块:
- {(6,3)} 和 {(4,3)} 没有邻居关系,因此是两个独立的粘连块。
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 4。
- {(4,3)} 的邻居为 (3,3)、(5,3)、(4,2)、(4,4),气数为 3(因为 (4,4) 已被移除)。
下一步
轮到 B方 选择一个合法的数字对加入B集合。请B方选择一个数字对(例如 (5,4)),并告诉我你的选择。我会继续更新游戏状态!
(3,3)
好的!B方选择了 (3,3)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4), (3,6), (3,3)}
- W集合:{(6,3), (4,3)}
- K集合:移除了 (4,4)、(6,3)、(3,6)、(4,3) 和 (3,3),剩余所有数字对(共 76 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 和 {(3,6)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,5),气数为 3。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- {(3,3)} 是一个新的粘连块,邻居为 (2,3)、(4,3)、(3,2)、(3,4)。
- 由于 (4,3) 已被移除,气数为 3((2,3)、(3,2)、(3,4))。
- W集合的粘连块:
- {(6,3)} 和 {(4,3)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 4。
- {(4,3)} 的邻居为 (3,3)、(5,3)、(4,2)、(4,4),气数为 2(因为 (3,3) 和 (4,4) 已被移除)。
- {(6,3)} 和 {(4,3)} 仍然没有邻居关系,因此是两个独立的粘连块。
检查删除规则
- W集合的粘连块 {(4,3)} 的气数现在为 2,未变为0,因此不触发删除规则。
- B集合的粘连块 气数均未变为0,因此无需删除。
下一步
轮到 W方 选择一个合法的数字对加入W集合。请W方选择一个数字对(例如 (5,3)),并告诉我你的选择。我会继续更新游戏状态!
(3,2)
好的!W方选择了 (3,2)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4), (3,6), (3,3)}
- W集合:{(6,3), (4,3), (3,2)}
- K集合:移除了 (4,4)、(6,3)、(3,6)、(4,3)、(3,3) 和 (3,2),剩余所有数字对(共 75 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 和 {(3,6)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,5),气数为 3。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- {(3,3)} 的邻居为 (2,3)、(4,3)、(3,2)、(3,4)。 - 由于 (4,3) 和 (3,2) 已被移除,气数为 2((2,3)、(3,4))。
- W集合的粘连块:
- {(6,3)} 和 {(4,3)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 4。
- {(4,3)} 的邻居为 (3,3)、(5,3)、(4,2)、(4,4),气数为 1(因为 (3,3) 和 (4,4) 已被移除)。
- {(3,2)} 是一个新的粘连块,邻居为 (2,2)、(4,2)、(3,1)、(3,3)。
- 由于 (3,3) 已被移除,气数为 3((2,2)、(4,2)、(3,1))。
检查删除规则
- W集合的粘连块 {(4,3)} 的气数现在为 1,未变为0,因此不触发删除规则。
- B集合的粘连块 气数均未变为0,因此无需删除。
(4,3)的气数计算有问题了啊,邻居是 (3,3)、(5,3)、(4,2)、(4,4),与K集合的交集是(4,2)和(5,3)照说有两口气才对呢,为何只有一口气了?
下一步
轮到 B方 选择一个合法的数字对加入B集合。请B方选择一个数字对(例如 (5,4)),并告诉我你的选择。我会继续更新游戏状态!
(5,3)
好的!B方选择了 (5,3)。以下是当前游戏状态的更新:
当前游戏状态
- B集合:{(4,4), (3,6), (3,3), (5,3)}
- W集合:{(6,3), (4,3), (3,2)}
- K集合:移除了 (4,4)、(6,3)、(3,6)、(4,3)、(3,3)、(3,2) 和 (5,3),剩余所有数字对(共 74 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 和 {(3,6)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,5),气数为 3。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- {(3,3)} 的邻居为 (2,3)、(4,3)、(3,2)、(3,4)。
- 由于 (4,3) 和 (3,2) 已被移除,气数为 2((2,3)、(3,4))。
- {(5,3)} 是一个新的粘连块,邻居为 (4,3)、(6,3)、(5,2)、(5,4)。
- 由于 (4,3) 和 (6,3) 已被移除,气数为 2((5,2)、(5,4))。
- W集合的粘连块:
- {(6,3)} 和 {(4,3)} 仍然没有邻居关系,因此是两个独立的粘连块。
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 3(因为 (5,3) 已被移除)。
- {(4,3)} 的邻居为 (3,3)、(5,3)、(4,2)、(4,4),气数为 0(因为 (3,3)、(5,3) 和 (4,4) 已被移除)。
- {(3,2)} 的邻居为 (2,2)、(4,2)、(3,1)、(3,3),气数为 3(因为 (3,3) 已被移除)。
检查删除规则
- W集合的粘连块 {(4,3)} 的气数现在为 0,因此触发删除规则。
- 将 {(4,3)} 从W集合中删除。
- 更新W集合:{(6,3), (3,2)}。
更新后的游戏状态
- B集合:{(4,4), (3,6), (3,3), (5,3)}
- W集合:{(6,3), (3,2)}
- K集合:移除了 (4,4)、(6,3)、(3,6)、(4,3)、(3,3)、(3,2) 和 (5,3),剩余所有数字对(共 74 个)。
- 粘连块与气数:
- B集合的粘连块:
- {(4,4)} 的邻居为 (3,4)、(5,4)、(4,5),气数为 3。
- {(3,6)} 的邻居为 (2,6)、(4,6)、(3,5)、(3,7),气数为 4。
- {(3,3)} 的邻居为 (2,3)、(4,3)、(3,2)、(3,4),气数为 2。
- {(5,3)} 的邻居为 (4,3)、(6,3)、(5,2)、(5,4),气数为 2。
- W集合的粘连块:
- {(6,3)} 的邻居为 (5,3)、(7,3)、(6,2)、(6,4),气数为 3。
- {(3,2)} 的邻居为 (2,2)、(4,2)、(3,1)、(3,3),气数为 3。
- B集合的粘连块:
下一步
轮到 W方 选择一个合法的数字对加入W集合。请W方选择一个数字对(例如 (5,2)),并告诉我你的选择。我会继续更新游戏状态!
好像出问题了啊,照说应该是

第4步(4,3)的气数为何会是0,哪里出问题了?这不还有(4,2)一口气嘛
看了半天没看出来,要下车了,先这样吧,后面再琢磨吧。

汕头果然要暖和一些啊,有动力了。
住下来了,仔细看了规则,按说没有问题,再来试一遍,中间随时关注是否有错误,再努力一下看看:
重启一次对话,然后重发游戏规则
游戏规则
定义:
1.数字对,是指两个1到9之间的整数组成的有序集合。可与记为(m,n),如果m不等于n,那么认为(m,n)与(n,m)是两个不同的数字对。
2.游戏由两方组成,称为B方和W方,每一方拥有一个集合,称为B集合和W集合,集合中的元素是数字对,游戏开始时B集合和W集合都是空集合。
3.没有出现在B集合和W集合中的所有数字对构成一个K集合
4.两个数字对(m,n)和(a,b),如果n与b一样而且m和a只差1,或者m与a一样而且n和b只差1,称这两个数字对是邻居关系
5.具有邻居关系的两个数字对有粘连关系,如果A与B有粘连关系,B与C也有粘连关系,称A与C也有粘连关系
6.根据粘连关系把B集合和W集合分割成若干子集合,称为粘连块
7.一个粘连块中每个数字对的邻居的集合的并集与K集合的交集称为该粘连块的气集合
8.一个粘连块的气集合中的元素个数称为这个粘连块的气数
规则:
1.由B方先,W方后,交替选择一个K中的数字对加入到自己一方的集合中。
2.选择的数字对加入自己一方的集合后可能导致双方的粘连块有变化,如果变化后的某个粘连块的气数变为0,如果这个粘连块是对方的,可以将这个粘连块中的所有数字对从对方数字对集合中删除,
3.如果选择的数字对不能使对方的某个粘连块气数变成0,反而使自己一方的某个粘连块气数变成0,那这个数字对就不能选择。
4,某方选择的数字对导致对方被删除的数字对只有一个,这个数字对下一次对方不能选择
5,直到一方无法选择合法的数字对,此时游戏结束
6,结束是计算B集合中的数字对个数,收集B集合中所有数字对的邻居集合与K集合的交集中的数字对个数,两个数字加起来,称为B方的地盘数Bn,对W方也按相同的规则统计出W方地盘数Wn,如果Bn-Wn>3则称B方赢,否则称W方赢
这个游戏规则描述了一个类似于围棋或五子棋的抽象策略游戏,但使用了数字对和粘连块的概念。以下是对游戏规则的详细解释和步骤总结:
1. 基本定义
- 数字对:由两个1到9之间的整数组成的有序集合,记为(m,n)。如果m≠n,则(m,n)和(n,m)是两个不同的数字对。
- B方和W方:游戏的双方,分别拥有B集合和W集合,集合中的元素是数字对。游戏开始时,B集合和W集合都是空的。
- K集合:所有未出现在B集合和W集合中的数字对构成的集合。
2. 邻居关系和粘连关系
- 邻居关系:两个数字对(m,n)和(a,b)如果满足以下条件之一,则称它们是邻居关系: - n = b 且 |m - a| = 1 - m = a 且 |n - b| = 1
- 粘连关系:如果A与B有邻居关系,B与C也有邻居关系,那么A与C也有粘连关系。粘连关系将B集合和W集合分割成若干子集合,称为粘连块。
3. 气集合和气数
- 气集合:一个粘连块中每个数字对的邻居的集合的并集与K集合的交集称为该粘连块的气集合。
- 气数:气集合中的元素个数称为这个粘连块的气数。
4. 游戏规则
- 轮流选择:B方先手,W方后手,交替从K集合中选择一个数字对加入到自己一方的集合中。
- 气数变化:选择的数字对加入自己一方的集合后,可能导致双方的粘连块发生变化。如果某个粘连块的气数变为0: - 如果这个粘连块是对方的,可以将这个粘连块中的所有数字对从对方集合中删除。
- 合法性检查:如果选择的数字对不能使对方的某个粘连块气数变成0,反而使自己一方的某个粘连块气数变成0,那么这个数字对不能选择。
- 禁止选择:如果某方选择的数字对导致对方被删除的数字对只有一个,这个数字对下一次对方不能选择。
- 游戏结束:直到一方无法选择合法的数字对,游戏结束
- 胜负判定: - 计算B集合中的数字对个数,以及B集合中所有数字对的邻居集合与K集合的交集中的数字对个数,两者相加得到B方的地盘数Bn。 - 对W方也按相同的规则统计出W方地盘数Wn。 - 如果Bn - Wn > 3,则B方赢;否则,W方赢。
5. 游戏策略
- 控制气数:玩家需要尽量增加自己粘连块的气数,同时减少对方粘连块的气数。
- 避免自杀:选择数字对时要避免使自己一方的粘连块气数变为0。
- 限制对方选择:通过选择特定数字对,限制对方的选择空间。
6. 示例
假设B方选择数字对(1,2),W方选择数字对(2,2),B方再选择数字对(1,3)。此时:
- B集合:{(1,2), (1,3)}
- W集合:{(2,2)}
- K集合:所有未选择的数字对,根据邻居关系和粘连关系,计算各粘连块的气数,并根据气数变化进行删除和选择。
总结
这个游戏规则复杂且具有策略性,玩家需要深入理解数字对、邻居关系、粘连块和气数的概念,才能在游戏中取得优势。
似乎有点不一样了,直接说有点像围棋游戏或五子棋游戏了,看来看出来点东西了啊。
请你做裁判,我们来玩一次这个游戏
好的!我将作为裁判来主持这次游戏。我们将严格按照你提供的规则进行游戏。为了方便起见,我会记录每一步的状态,包括B集合、W集合、K集合,以及各粘连块的气数和气集合。
游戏初始化
- B集合:{}
- W集合:{}
- K集合:所有可能的数字对,即{(1,1), (1,2), …, (9,9)},共81个数字对。
- 当前回合:B方先手。
第1步:B方选择
B方需要从K集合中选择一个数字对加入B集合。请B方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据B方的选择更新B集合和K集合。
- 检查B方的选择是否合法(即不会导致B方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果B方的选择导致W方的某个粘连块气数为0,则删除该粘连块。
- 轮到W方选择。请B方选择一个数字对!
这次又不一样,增加了个裁判说明,减少了很多内部信息的输出。
(4,4)
好的!B方选择了数字对 (4,4)。现在我来更新游戏状态并检查合法性。
第1步:
B方选择 (4,4)
- B集合:{(4,4)}
- W集合:{}
- K集合:K集合中移除(4,4),剩余80个数字对。
检查合法性
- 粘连块:B集合中只有一个数字对(4,4),因此B方的粘连块为{(4,4)}。
- 气集合:
- (4,4)的邻居是满足以下条件的数字对:
- (3,4) 和 (5,4)(上下邻居)
- (4,3) 和 (4,5)(左右邻居)
- 这些邻居中,未出现在B集合和W集合中的数字对是:(3,4), (5,4), (4,3), (4,5)。
- 因此,气集合为 {(3,4), (5,4), (4,3), (4,5)}。
- 气数:气集合中有4个元素,气数为4。由于B方的选择没有导致任何粘连块的气数为0,选择合法。
更新状态
- B集合:{(4,4)}
- W集合:{}
- K集合:K集合中移除(4,4)。
- 当前回合:轮到W方选择。
第2步:W方选择
W方需要从K集合中选择一个数字对加入W集合。请W方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据W方的选择更新W集合和K集合。
- 检查W方的选择是否合法(即不会导致W方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果W方的选择导致B方的某个粘连块气数为0,则删除该粘连块。
- 轮到B方选择。请W方选择一个数字对!
(6,3)
好的!W方选择了数字对 (6,3)。现在我来更新游戏状态并检查合法性。
第2步:W方选择 (6,3)
- B集合:{(4,4)}
- W集合:{(6,3)}
- K集合:K集合中移除(6,3),剩余79个数字对。
检查合法性
- 粘连块:W集合中只有一个数字对(6,3),因此W方的粘连块为{(6,3)}。
- 气集合:
- (6,3)的邻居是满足以下条件的数字对:
- (5,3) 和 (7,3)(上下邻居)
- (6,2) 和 (6,4)(左右邻居)
- 这些邻居中,未出现在B集合和W集合中的数字对是:(5,3), (7,3), (6,2), (6,4)。
- 因此,气集合为 {(5,3), (7,3), (6,2), (6,4)}。3. 气数:气集合中有4个元素,气数为4。由于W方的选择没有导致任何粘连块的气数为0,选择合法。
- (6,3)的邻居是满足以下条件的数字对:
更新状态
- B集合:{(4,4)}
- W集合:{(6,3)}
- K集合:K集合中移除(6,3)。
- 当前回合:轮到B方选择。
第3步:B方选择
B方需要从K集合中选择一个数字对加入B集合。请B方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据B方的选择更新B集合和K集合。
- 检查B方的选择是否合法(即不会导致B方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果B方的选择导致W方的某个粘连块气数为0,则删除该粘连块。
- 轮到W方选择。请B方选择一个数字对!
(3,6)
好的!B方选择了数字对 (3,6)。现在我来更新游戏状态并检查合法性。
第3步:B方选择 (3,6)
- B集合:{(4,4), (3,6)}
- W集合:{(6,3)}
- K集合:K集合中移除(3,6),剩余78个数字对。
检查合法性
- 粘连块:
- B集合中有两个数字对:(4,4) 和 (3,6)。
- 检查它们是否构成粘连关系:
- (4,4) 的邻居是 (3,4), (5,4), (4,3), (4,5)。
- (3,6) 的邻居是 (2,6), (4,6), (3,5), (3,7)。
- (4,4) 和 (3,6) 之间没有邻居关系,因此它们是两个独立的粘连块:
- 粘连块1:{(4,4)}
- 粘连块2:{(3,6)}
-
气集合:
- 粘连块1({(4,4)})的气集合为 {(3,4), (5,4), (4,3), (4,5)},气数为4。
- 粘连块2({(3,6)})的气集合为 {(2,6), (4,6), (3,5), (3,7)},气数为4。
-
合法性:B方的选择没有导致任何粘连块的气数为0,选择合法。
更新状态
- B集合:{(4,4), (3,6)}
- W集合:{(6,3)}
- K集合:K集合中移除(3,6)。
- 当前回合:轮到W方选择。
第4步:W方选择
W方需要从K集合中选择一个数字对加入W集合。请W方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据W方的选择更新W集合和K集合。
- 检查W方的选择是否合法(即不会导致W方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果W方的选择导致B方的某个粘连块气数为0,则删除该粘连块。
- 轮到B方选择。请W方选择一个数字对!
(4,3)
好的!W方选择了数字对 (4,3)。现在我来更新游戏状态并检查合法性。
第4步:W方选择 (4,3)
- B集合:{(4,4), (3,6)}
- W集合:{(6,3), (4,3)}
- K集合:K集合中移除(4,3),剩余77个数字对。
检查合法性
- 粘连块:
- W集合中有两个数字对:(6,3) 和 (4,3)。
- 检查它们是否构成粘连关系:
- (6,3) 的邻居是 (5,3), (7,3), (6,2), (6,4)。
- (4,3) 的邻居是 (3,3), (5,3), (4,2), (4,4)。
- (6,3) 和 (4,3) 之间没有邻居关系,因此它们是两个独立的粘连块:
- 粘连块1:{(6,3)}
- 粘连块2:{(4,3)}
-
气集合:
- 粘连块1({(6,3)})的气集合为 {(5,3), (7,3), (6,2), (6,4)},气数为4。
- 粘连块2({(4,3)})的气集合为 {(3,3), (5,3), (4,2), (4,4)},气数为4。
-
合法性:W方的选择没有导致任何粘连块的气数为0,选择合法。
更新状态
- B集合:{(4,4), (3,6)}
- W集合:{(6,3), (4,3)}
- K集合:K集合中移除(4,3)。
- 当前回合:轮到B方选择。
第5步:B方选择
B方需要从K集合中选择一个数字对加入B集合。请B方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据B方的选择更新B集合和K集合。
- 检查B方的选择是否合法(即不会导致B方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果B方的选择导致W方的某个粘连块气数为0,则删除该粘连块。
- 轮到W方选择。请B方选择一个数字对!
(3,3)
好的!B方选择了数字对 (3,3)。现在我来更新游戏状态并检查合法性。
第5步:B方选择 (3,3)
- B集合:{(4,4), (3,6), (3,3)}
- W集合:{(6,3), (4,3)}
- K集合:K集合中移除(3,3),剩余76个数字对。
检查合法性
-
粘连块:
- B集合中有三个数字对:(4,4), (3,6), (3,3)。
- 检查它们是否构成粘连关系:
- (4,4) 的邻居是 (3,4), (5,4), (4,3), (4,5)。
- (3,6) 的邻居是 (2,6), (4,6), (3,5), (3,7)。
- (3,3) 的邻居是 (2,3), (4,3), (3,2), (3,4)。
- (3,3) 和 (4,4) 之间没有邻居关系。
- (3,3) 和 (3,6) 之间没有邻居关系。
- 因此,B方的粘连块为:
- 粘连块1:{(4,4)}
- 粘连块2:{(3,6)}
- 粘连块3:{(3,3)}
-
气集合:
- 粘连块1({(4,4)})的气集合为 {(3,4), (5,4), (4,3), (4,5)},气数为4。
- 粘连块2({(3,6)})的气集合为 {(2,6), (4,6), (3,5), (3,7)},气数为4。
- 粘连块3({(3,3)})的气集合为 {(2,3), (4,3), (3,2), (3,4)},气数为4。
-
合法性:B方的选择没有导致任何粘连块的气数为0,选择合法。
更新状态
- B集合:{(4,4), (3,6), (3,3)}
- W集合:{(6,3), (4,3)}
- K集合:K集合中移除(3,3)。
- 当前回合:轮到W方选择。
第6步:W方选择
W方需要从K集合中选择一个数字对加入W集合。请W方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据W方的选择更新W集合和K集合。
- 检查W方的选择是否合法(即不会导致W方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果W方的选择导致B方的某个粘连块气数为0,则删除该粘连块。
- 轮到B方选择。请W方选择一个数字对!
有点不放心啊,上次就是这里开始错的,我先看看状态:
请给出目前W方的粘连块情况
目前W方的粘连块情况如下:
W方粘连块分析
- W集合:{(6,3), (4,3)}
- 粘连块:
- W集合中有两个数字对:(6,3) 和 (4,3)。
- 检查它们是否构成粘连关系:
- (6,3) 的邻居是 (5,3), (7,3), (6,2), (6,4)。
- (4,3) 的邻居是 (3,3), (5,3), (4,2), (4,4)。
- (6,3) 和 (4,3) 之间没有邻居关系,因此它们是两个独立的粘连块:
- 粘连块1:{(6,3)}
- 粘连块2:{(4,3)}
粘连块的气集合和气数
- 粘连块1:{(6,3)}
- 邻居:(5,3), (7,3), (6,2), (6,4)。
- 气集合:{(5,3), (7,3), (6,2), (6,4)}。
- 气数:4。
- 粘连块2:{(4,3)}
- 邻居:(3,3), (5,3), (4,2), (4,4)。
- 气集合:{(3,3), (5,3), (4,2), (4,4)}。
- 气数:4。
总结
-
W方有两个独立的粘连块:
- 粘连块1:{(6,3)},气数为4。
- 粘连块2:{(4,3)},气数为4。
W方需要选择一个数字对,确保不会导致自己的粘连块气数变为0,同时尽量限制B方的粘连块气数。请W方选择一个数字对!
这次果然又出错了,不过这次是把气算多了,(4,3)的气应该有2气,这里变成4气了啊。

提示他一下看看能改过来么?
(4,3)的气集合中不应该有(3,3)啊,因为(3,3)已经在B集合中
你说得对!我之前的计算有误。感谢你的指正!让我重新计算 W方粘连块2:{(4,3)} 的气集合。
修正后的粘连块2:
{(4,3)} 的气集合
- 邻居:(3,3), (5,3), (4,2), (4,4)。
- 排除已占用的数字对:
- (3,3) 已经在B集合中,因此不能算作气集合的一部分。
- 有效气集合:{(5,3), (4,2), (4,4)}。
- 气数:3。
更新后的W方粘连块情况
- 粘连块1:{(6,3)}
- 气集合:{(5,3), (7,3), (6,2), (6,4)}。
- 气数:4。2. 粘连块2:{(4,3)}
- 气集合:{(5,3), (4,2), (4,4)}。
- 气数:3。
总结
- W方有两个独立的粘连块:
- 粘连块1:{(6,3)},气数为4。
- 粘连块2:{(4,3)},气数为3。
下一步:W方选择
W方需要从K集合中选择一个数字对加入W集合。请W方选择一个数字对(格式为(m,n),例如(1,2))。
裁判说明
- 我会根据W方的选择更新W集合和K集合。
- 检查W方的选择是否合法(即不会导致W方的粘连块气数为0)。
- 更新粘连块和气数。
- 如果W方的选择导致B方的某个粘连块气数为0,则删除该粘连块。
- 轮到B方选择。请W方选择一个数字对!
坏了,内部不知道出什么问题了,还是错的,其实(4,4)也在B集合中,也应该去掉,因此(4,3)只有两气才对。
结论
看来没法做下去了,DeepSeek毕竟只是一个生成式模型,让他来挑战这么复杂的规则可能有点过分了,有点像一个经常犯错的裁判看来这条路走不通了,是否有其他方式能够让deepseek能够理解并执行围棋规则,以后有机会再来尝试吧。
当然,同样的事情让文小言来做,只能对三步,当然因此判断文小言不如DeepSeek,似乎又有点五十步笑百步了。
通过这两天的考察,一个印象是,DeepSeek是一个好的文字秘书,但是如果给他较为复杂的事情去处理,他出错的概率会增加,而且出错时并不能举一反三,所以可以从这里获得支持,但是不能相信,要随时警惕他可能包含一个非常错误的答案给你。
DeepSeek系列:
- DeepSeek能进行逻辑推理吗?
- DeepSeek能运行程序吗?
- DeepSeek能下围棋吗?
相关文章:
DeepSeek能下围棋吗?(续)
休息了一下,接着琢磨围棋,其实前面一篇里的规则有个漏洞的,就是邻居关系定义有问题,先回顾一下游戏规则: 游戏规则 定义: 1.数字对,是指两个1到9之间的整数组成的有序集合。可与记为(m,n)&…...
网络安全技术简介
网络安全技术简介 随着信息技术的迅猛发展,互联网已经成为人们日常生活和工作中不可或缺的一部分。与此同时,网络安全问题也日益凸显,成为全球关注的焦点。无论是个人隐私泄露、企业数据被盗取还是国家信息安全受到威胁,都与网络…...
Keepalived高可用集群企业应用实例一
一、实现master/slave的keepalived单主架构 1.master配置 global_defs { notification_email { 2676401238qq.com } notification_email_from keepalivedKA1.xiao.org smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id ka1.xiao.org vrrp_skip_check_adv_addr vrr…...
愿景:做机器视觉行业的颠覆者
一个愿景,两场战斗,专注制胜。 一个愿景:做机器视觉行业的颠覆者。 我给自己创业,立一个大的愿景:做机器视觉行业的颠覆者。 两场战斗:无监督-大模型 上半场,无监督。2025-2030,共五…...
【产品经理学习案例——AI翻译棒出海业务】
前言: 本文主要讲述了硬件产品在出海过程中,翻译质量、翻译速度和本地化落地策略是硬件产品规划需要考虑的核心因素。针对不同国家,需要优化翻译质量和算法,关注市场需求和文化差异,以便更好地满足当地用户的需求。同…...
算法总结-数组/字符串
文章目录 1.合并两个有序数组1.答案2.思路 2.移除元素1.答案2.思路 3.删除有序数组中的重复项 II1.答案2.思路 4.多数元素1.答案2.思路 5.轮转数组1.答案2.思路 6.买卖股票的最佳时机1.答案2.思路 7.买卖股票的最佳时机 II1.答案2.思路 8.跳跃游戏1.答案2.思路 9.H 指数1.答案2…...
被裁与人生的意义--春节随想
还有两个月就要被迫离开工作了十多年的公司了,不过有幸安安稳稳的过了一个春节,很知足! 我是最后一批要离开的,一百多号同事都没“活到”蛇年。看着一批批仁人志士被“秋后斩首”,马上轮到我们十来个,个中滋味很难言清…...
Linux解决输入法卡死问题
说明:在Ubuntu系统中,如果您需要重启输入法服务(比如fcitx或ibus),您可以按照以下步骤操作。这些步骤适用于大多数基于Ubuntu的发行版,例如Ubuntu、Linux Mint等。 一、重启Fcitx输入法服务 1、使用Ctrl …...
2501,编写dll
DLL的优点 简单的说,dll有以下几个优点: 1)节省内存.同一个软件模块,若是源码重用,则会在不同可执行程序中编译,同时运行这些exe时,会在内存中重复加载这些模块的二进制码. 如果使用dll,则只在内存中加载一次,所有使用该dll的进程会共享此块内存(当然,每个进程会复制一份的d…...
4-图像梯度计算
文章目录 4.图像梯度计算(1)Sobel算子(2)梯度计算方法(3)Scharr与Laplacian算子4.图像梯度计算 (1)Sobel算子 图像梯度-Sobel算子 Sobel算子是一种经典的图像边缘检测算子,广泛应用于图像处理和计算机视觉领域。以下是关于Sobel算子的详细介绍: 基本原理 Sobel算子…...
【算法设计与分析】实验5:贪心算法—装载及背包问题
目录 一、实验目的 二、实验环境 三、实验内容 四、核心代码 五、记录与处理 六、思考与总结 七、完整报告和成果文件提取链接 一、实验目的 掌握贪心算法求解问题的思想;针对不同问题,会利用贪心算法进行问题建模、求解以及时间复杂度分析&#x…...
从0开始使用面对对象C语言搭建一个基于OLED的图形显示框架(协议层封装)
目录 协议层设计,以IIC为例子 关于软硬件IIC 设计的一些原则 完成协议层的抽象 刨析我们的原理 如何完成我们的抽象 插入几个C语言小技巧 完成软件IIC通信 开始我们的IIC通信 结束我们的IIC通信 发送一个字节 (重要)完成命令传递和…...
【自学笔记】计算机网络的重点知识点-持续更新
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 计算机网络重点知识点一、计算机网络概述二、网络分类三、网络性能指标四、网络协议与体系结构五、数据交换方式六、物理层与数据链路层七、网络层与运输层八、应用…...
Java中的getInterfaces()方法:使用与原理详解
在Java中,反射(Reflection)是一个强大的工具,它允许程序在运行时动态地获取类的信息并操作类的属性和方法。getInterfaces()方法是Java反射API中的一个重要方法,用于获取类或接口直接实现的接口。本文将深入探讨getInt…...
MySQL为什么默认引擎是InnoDB ?
大家好,我是锋哥。今天分享关于【MySQL为什么默认引擎是InnoDB ?】面试题。希望对大家有帮助; MySQL为什么默认引擎是InnoDB ? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 MySQL 默认引擎是 InnoDB,主要…...
玄武计划--干中学,知行合一
作为开发者转型安全领域有一定优势,但需要系统学习网络安全知识。以下是针对你的情况(Java背景 + 快速入门)的实战导向学习路径,分为基础、工具、漏洞利用和进阶四个阶段: 一、基础准备(1-2周) 网络协议与渗透基础 重点协议:深入理解 TCP/IP、HTTP/HTTPS、DNS、SMTP,用…...
【AIGC专栏】AI在自然语言中的应用场景
ChatGPT出来以后,突然间整个世界都非常的为之一惊。很多人大喊AI即将读懂人类,虽然这是一句夸大其词的话,但是经过未来几十年的迭代,ChatGPT会变成什么样我们还真的很难说。在当前生成式内容来说,ChatGPT毫无疑问在当前…...
3D gaussian splatting 源码剖析与demo验证
0.概述 本文对最原始的3D GS源码进行剖析,逐段分析其中的主要代码模块,结合其原理加深理解,同时结合demo演示给出具体的验证。 1.流程图 2.源码剖析 3.验证与实现...
【cocos官方案例改】跳跃牢猫
自制游戏【跳跃牢烟】 案例解析 案例需求,点击鼠标控制白块左右。 资源管理器部分 在body创建一个2d精灵用作玩家。 在地下在创建一个2d精灵用来代表地面。 在body下挂在脚本。 全部脚本如下 (在二次进行复刻时候,发现把代码复制上去无法…...
docker安装nacos2.2.4详解(含:nacos容器启动参数、环境变量、常见问题整理)
一、镜像下载 1、在线下载 在一台能连外网的linux上执行docker镜像拉取命令 docker pull nacos:2.2.4 2、离线包下载 两种方式: 方式一: -)在一台能连外网的linux上安装docker执行第一步的命令下载镜像 -)导出 # 导出镜像到…...
使用 postman 测试思源笔记接口
思源笔记 API 权鉴 官方文档-中文:https://github.com/siyuan-note/siyuan/blob/master/API_zh_CN.md 权鉴相关介绍截图: 对应的xxx,在软件中查看 如上图:在每次发送 API 请求时,需要在 Header 中添加 以下键值对&a…...
RK3568使用QT操作LED灯
文章目录 一、QT中操作硬件设备思路Linux 中的设备文件操作硬件设备的思路1. 打开设备文件2. 写入数据到设备3. 从设备读取数据4. 设备控制5. 异常处理在 Qt 中操作设备的典型步骤实际应用中的例子:控制 LED总结二、QT实战操作LED灯设备1. `mainwindow.h` 头文件2. `mainwindo…...
51单片机开发——I2C通信接口
I2C是微电子通信控制领域广泛采用的一种总线标准。 起始和停止信号: void iic_start(void) {IIC_SDA1;//如果把该条语句放在SCL后面,第二次读写会出现问题delay_10us(1);IIC_SCL1;delay_10us(1);IIC_SDA0; //当SCL为高电平时,SDA由高变为低d…...
GitHub Actions定时任务配置完全指南:从Cron语法到实战示例
你好,我是悦创。 博客网站:https://blog.bornforthis.cn/ 本教程将详细讲解如何在GitHub Actions中配置定时任务(Scheduled Tasks),帮助你掌握 Cron 表达式的编写规则和实际应用场景。 一、定时任务基础配置 1.1 核…...
【网络】3.HTTP(讲解HTTP协议和写HTTP服务)
目录 1 认识URL1.1 URI的格式 2 HTTP协议2.1 请求报文2.2 响应报文 3 模拟HTTP3.1 Socket.hpp3.2 HttpServer.hpp3.2.1 start()3.2.2 ThreadRun()3.2.3 HandlerHttp() 总结 1 认识URL 什么是URI? URI 是 Uniform Resource Identifier的缩写&…...
在K8s中部署动态nfs存储provisioner
背景 之前,我已经在一台worker node上安装了local lvm 的provisioner来模拟需要本地高IOPS的数据库等stafeful应用的实现。 为了后续给虚拟机里的K8s集群安装可用的metrics和logs监控系统(metrics和logs的时序数据库需要永久存储)࿰…...
优雅管理Python2 and python3
python2 和 python3, 由于没有像其他软件的向下兼容,必须同时安装Python2 和Python3 ,介绍在linux和windows下优雅管理。 一、linux中安装Python2和Python3 linux 中用conda 创建虚拟环境,来管理不同版版工具 由于主流使用Python3…...
创建与管理MySQL数据库
数据库是现代应用程序的核心部分,无论是Web开发、数据分析还是企业级应用,数据库的创建与管理是基础且关键的技能。本教程旨在帮助自学编程的学习者掌握如何通过SQL命令创建、管理和操作数据库。通过本教程,可以学会如何创建数据库、查看已有数据库、选择数据库以及删除不再…...
基于微信小程序的辅助教学系统的设计与实现
标题:基于微信小程序的辅助教学系统的设计与实现 内容:1.摘要 摘要:随着移动互联网的普及和微信小程序的兴起,基于微信小程序的辅助教学系统成为了教育领域的一个新的研究热点。本文旨在设计和实现一个基于微信小程序的辅助教学系统,以提高教…...
Python从0到100(八十六):神经网络-ShuffleNet通道混合轻量级网络的深入介绍
前言: 零基础学Python:Python从0到100最新最全教程。 想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Pyth…...

