【发布时间】:2009-12-07 10:49:10
【问题描述】:
Perverse Hangman 是一款与普通 Hangman 非常相似的游戏,但有一个重要区别:获胜的单词由房子根据猜到的字母动态确定。
例如,假设您有棋盘 _ A I L 和 12 个剩余的猜测。因为有 13 个以 AIL 结尾的不同单词(bail、fail、hail、jail、kail、mail、nail、pail、rail、sail、tail、vail、wail),所以无论您猜到什么 12 个字母,房子都一定会赢,房子会声称你选择的词是你没有猜到的。但是,如果董事会是_ I L M,那么您已经走投无路了,因为 FILM 是唯一以 ILM 结尾的单词。
挑战是:给定字典、字长和允许猜测的数量,提出一个算法:
a) 证明玩家总是会赢
b) 通过为房子输出一个决策树来证明房子总是赢,该决策树允许房子无论如何都能逃脱。
作为一个玩具示例,考虑字典:
bat
bar
car
如果允许您猜错 3 次,则玩家将通过以下树获胜:
Guess B
NO -> Guess C, Guess A, Guess R, WIN
YES-> Guess T
NO -> Guess A, Guess R, WIN
YES-> Guess A, WIN
【问题讨论】:
-
抱歉...您有什么问题?
-
您错过了从老师那里编写问题规范的附加部分“......或者,向更有学识的同事提出挑战;接受他们的答案,并声称它是您自己的。”
-
也许如果你把它标记为 code-golf 并将其设为 CW,你的问题可能会有机会......
-
这当然是一个真实的问题,算法(评估游戏树)是程序员感兴趣的标准之一。这个问题唯一的问题是它是家庭作业(提问者没有完成他们的工作)。
-
我已经投票反对,并且已经回答了这个问题。说不是一个真正的问题与“我认为你不应该帮助这个孩子做作业”是不一样的。让其他人选择
标签: algorithm