这是一个创建于 2605 天前的主题,其中的信息可能已经有所发展或是发生改变。
有个猜音节的问题,想请教下大家。
问题描述:
音符用英文字母 A-G 表示,升调到降调用 1-3 表示,音符就是 A1-G3 的字符串。
一个音节由三个音符组成。,每个音符只能出现一次。
A 会想一个音节,然后 B 来猜。这里不考虑顺序,B 只需要猜中三个音符即可。
A 提供的反馈为三个数字:
第一个为 字母与数字均正确的音符数量
第二个为 字母正确但是数字错误的音符数量(除去第一个)
第三个为 数字正确但是字母错误的音符数量(除去第一个)
问 B 采用什么样的策略才能在最少的次数下猜到正确答案。
例子:
答案是 ["D1","B1","G2"]
Your guess 1: ["A1","B1","C2"]
My answer: (1,0,2)
Your guess 2: ["A1","D1","E2"]
My answer: (1,0,2)
Your guess 3: ["A1","F1","G2"]
My answer: (1,0,2)
Your guess 4: ["B1","D1","G2"]
My answer: (3,0,0)
You got it in 4 guesses!
目前的思路就是 B 保存个列表,然后根据反馈删掉不可能的答案。
谢谢