考虑一个传统的猜数游戏。 A 、 B 两名玩家事先约定一个正整数 N ,然后 A 在心里想一个不超过 N 的正整数 x , B 则需要通过向 A 提问来猜出 A 心里想的数。 B 的问题只有唯一的格式:先列出一些数,然后问 A “x 是否在这些数里”, A 则需要如实回答“是”或者“否”。显然, B 是保证能猜到 x 的,只需要依次询问“x 是否等于 1 ”,“x 是否等于 2 ”即可。由于 B 可以精心选出满足某种特征的所有数,询问 x 是否在这些数里,因而 B 还可以做得更好。例如当 N = 16 时, B 第一次可以问“x 是否小于等于 8 ”,或者等价地,“x 是否属于 {1, 2, 3, 4, 5, 6, 7, 8} ”;接下来,根据 A 的回复继续细问“x 是否小于等于 4 ”或者“x 是否小于等于 12 ”,以此类推。另一种方法则是询问“x 的二进制表达的第一位是否是 1”,“x 的二进制表达的第二位是否是 1”,以此类推,从而获得 x 的二进制表达的所有数位,便能推出 x 来。
现在,有意思的问题来了。假设 A 可以偶尔说谎(但保证不会连续说谎两次),那么 B 还能通过询问猜出 A 所想的数吗?如果愿意的话, B 可以询问任意多次。
“come in”
“boss,这是我们公司今年的报销数据”
“我看看”
boss成熟地操作着鼠标。
“boss,我们的员工今年一共报销了2772张单,总计2500345元。平均每张单大约报销902元”
突然,boss眼神变得凝重。
“你确定你没造假?”
“没哇,boss,这些数据肯定不是人造的。你看看,这2772张单,每张单报销的金额数据里面,第一位数为1至9都几乎各占九分之一,符合统计学规律啊”
“来人,把这个财务拉出去处理一下”
“饶命啊,boss,饶。。。”
“砰,砰,砰”
End。
问题:boss从哪里看出财务造假了,为什么?