什么是一个好的算法,以确定一个字的“难度”为一个刽子手游戏,使游戏可以选择的话,以匹配指定的难度水平?
难度似乎与需要猜测的次数、字母的相对使用频率(例如,有许多不常见字母的单词可能更难猜测)以及单词的长度有关。
还有一些主观因素需要(试图)补偿,比如一个单词在玩家的词汇表中的可能性,以及可以被识别的可能性,从单纯基于字母频率的猜测策略转变为基于已知匹配单词列表的猜测策略。
My attempt for now is below in ruby. Any suggestions on how to improve the categorisation?
def classify_word(w)
n = w.chars.to_a.uniq.length # Num. unique chars in w
if n < 5 and w.length > 4
return WordDifficulty::Easy
end
if n > w.length / 2
return WordDifficulty::Hard
else
return WordDifficulty::Medium
end
end
我正在写一个我想让我的孩子们玩的刽子手游戏; 我太老了,不能再尝试“家庭作业”了,这可能就是为什么这个问题得到了如此多的反对票..。 词汇是从大型词汇数据库中随机抽取的,其中包括许多晦涩难懂的词汇,并根据确定的词汇难度级别进行过滤。