V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
x02
V2EX  ›  问与答

这个游戏如何做到的?

  •  
  •   x02 · 278 天前 · 1232 次点击
    这是一个创建于 278 天前的主题,其中的信息可能已经有所发展或是发生改变。

    无意中在某音看到一个主播, 猜姓氏. 他拿出一些卡片, 每个卡片上是一个 9 列 7 行的表格, 里面是姓氏. 他问, "这张有没有你的姓氏"? 如果有放左边, 没有放右边. 全问一遍, 猜出你的姓氏.

    有个人连线, 所有卡片全没有他的姓氏, 就最后一张有. 这个主播也猜到了. 每张卡片 63 个姓, 怎么能猜到?

    3 条回复    2023-07-24 09:13:33 +08:00
    geelaw
        1
    geelaw  
       278 天前 via iPhone   ❤️ 1
    n 张卡片问答可以提取 n 位的信息,因此利用 n 张卡片问答可以准确识别 2^n 个可能的姓氏中的某个。

    简单的设计是这样的:选定 64 个姓氏作为可能的答案,编号 0 到 63 ,然后准备 6 张卡片,每张 63 个位置,第 k 张卡片包含且仅包含第 k 位是 1 的姓氏。注意 0 号姓氏不会出现在任意一张卡片里,所以 63 个位置足够了。每张卡片的空白位置填入一些不在原定 64 个姓氏里面的字/双字充门面。最后根据答案查表即可知道是 64 个姓氏中的哪一个。

    这 64 个姓氏可以选人数最多的,最大化能够覆盖的人口。
    Mutoo
        2
    Mutoo  
       278 天前
    以前 Flash 有个读心术游戏,猜是是图案,原理一样,正如一楼所述。
    loading
        3
    loading  
       278 天前
    就算是基础算法:二分法
    1-1000 ,用二分法,也只要问你 7 次。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2790 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 05:50 · PVG 13:50 · LAX 22:50 · JFK 01:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.