我决不让这贴子沉下去,期待楼主重出江湖.
看了诸位的发言后,我认为首先你要承认这100个人存在某种"默契",也就是说他们之前会商量好;否则当后面一个人说黑或者白的时侯对于前面的人来说没有任何意义.其次,前面的人是否会知道后面的人的死活,从各位的发言来看都是假定知道.我也假定为知道.这样的话其中一个人(不包括第100个)能够知道除自已之外的任何一个人的黑白信息,加上后面的人的回答就可以判断自已的颜色.(用奇偶法或"发声扬抑"之类或计算机编码)
奇偶法最NB,其他的诸如"发声扬抑","发声时延时和不延时"之类的次之,而还有一种用计算机二进制编码的方法最值得挖掘,是简单的密码学了.
不管怎样,最后一个人只有为大家作贡献了,没得保障(唉,为什么偶这么命苦呢)."发声扬抑","发声时延时和不延时"之类的方法其实都可以表达为两位二进制数的四种可能性:11,00,01,10.高位的"1"和"0"假设代表"扬"和"抑",而低位的"1"和"0"假设代表"黑"和"白".例如,"扬黑"即"11","扬白"即"10".而一个人是"黑"还是"白"是确定的,故他既要保命,又要告诉前一个人是否与自已的颜色一致,就只有两种选择,只能改变高位的"1"或"0",但已足够告诉前一个人是黑还是白了.
最后,如果这道题是基于以上的两点假设的话,那就不像博奕题了,纯粹一个关于"0","1"的数学题.用"0","1"的组合来表示尽可能多的信息,如4楼和8楼的方法是用了6位和7位的二进制串;"发声扬抑","发声时延时和不延时"之类的方法只用了两位的"0""1"组合.当然如果不是基于上面的两点假设的话,偶就搞还不定.