哪位大侠帮帮忙,很急的。
村子里有50个人,每人有一条狗,在这50条狗中有病狗(这种病不传染),于是人们要找出病狗。
每个人可以观察其他49条狗,以判断他们是否生病,(如果有病一定能看出来),只有自己的狗不能看,观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的狗是病狗就是枪毙自己的狗(发现后必须在一天内枪毙),而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。
第一天大家全看完了,但枪没有响,到了第三天传来一阵枪声,问村里共有几条病狗,如何推算出来的?
请根据题意用VB.NET编写一段程序完成此试题的解答
这道题怎么推算啊。急!
解决的给分
问题点数:50、回复次数:7Top
1 楼myhgo(网络力量)回复于 2004-09-02 13:00:34 得分 0
这是什么题?Top
2 楼thinkingforever(努力学习)回复于 2004-09-02 13:01:58 得分 0
考智力!Top
3 楼Night_Elf(风暴虫)回复于 2004-09-02 13:03:49 得分 0
这好象是IBM的面试题呀!Top
4 楼aboluoyuren(§∞飞翔的鱼∞§)回复于 2004-09-02 13:46:38 得分 0
出题的肯定少了个条件(每人每天观察多少条狗)或者(每条病狗要花多少时间看后确认)!Top
5 楼waximi(阿猫)回复于 2004-09-02 14:46:47 得分 50
前提是病狗一定有
假设只有一条病狗,那肯定有人看到其余的49只是好狗,他一定会干掉自己的狗,所以不成立
假设有两条病狗,因为第一天枪没响,所以大家都会认为至少有两条病狗,那看到其余的49只狗狗中有一条病狗的一定干掉自己的狗,所以不成立。
假设有三条病狗。因为第二天枪没响,所以大家都认为至少有三条病狗。有人看到其余有两只病狗的会干掉自己的狗,所以病狗有三条
Top
6 楼yingshis(英石)回复于 2004-09-02 14:54:14 得分 0
upTop
7 楼zhangzhifeng8888(峰)回复于 2004-09-02 15:21:38 得分 0
waximi(阿猫)算得不错。支持!!!Top




