← 完整题目索引

PROJECT EULER · #0905

现在我知道了

Now I Know

仅题目 · 待解原题 ↗

三个认识论者,分别称为 A、B 和 C,在一个房间里,每个人都戴着一顶上面有数字的帽子。他们事先被告知这三个数字都是正数,并且其中一个数字是另外两个数字的总和。

进入房间后,他们可以看到彼此帽子上的号码,但看不到自己的号码。从 A 开始并循环进行,每个认识论者必须诚实地陈述"我不知道我的数字"或宣布"现在我知道我的数字!"这会终止游戏。

例如,如果他们的数字是 A=2,B=1,C=1,则 A 在第一回合声明"现在我知道了"。如果他们的数字是 A=2,B=7,C=5,那么在 B 最终在第五回合宣布"现在我知道"之前,会听到四次"我不知道"。

F(A,B,C) 为认识论者声明"现在我知道"所需的轮数,包括做出此声明的轮次。所以 F(2,1,1)=1F(2,7,5)=5

a=17b=119F(ab,ba,ab+ba)

题解待补充

这道题的题目已收录,解题思路、代码和答案将在后续补充。