A piece of cake.
3 只病狗.
推论如下:
第一天: 假定只有1只病狗,设主人是A. 则49人看到1只病狗和最多48只好狗,他们不能断定自己的狗是不是病狗.而A看到的是49只好狗,根据病狗>=1. 则他可断定自己的是病狗.当杀之.
因为第1天没有枪声,所以病狗>1.
第二天: 假设病狗是2只,设主人分别是A,B. 则有48人看到2只病狗和最多47只好狗,不能断定自己的狗是否病狗,因为病狗可能是2和3. 但A和B看到的是1只病狗和48只好狗. 因为第一天没有枪声,说明病狗>1. A和B可由此推出自己的狗是病狗.A和B应该在第二天杀死自己的狗.
但第二天没有枪声,说明病狗>2.
第三天: 假设病狗是3只,主人分别是A,B,C. 则47人看到3只病狗和最多46只好狗,不能断定自己的狗是病狗还是好狗,因为病狗可能是3和4.但A,B和C看到的是2只病狗和47只好狗.因为病狗>2,所以自己的狗肯定是病狗.则A,B,C杀了自己的狗.
还是第三天: 假设病狗>3只,则A,B,C也看到3只以上的病狗和最多46只好狗,则他们没法判定自己的狗是否病狗.则第三天也不会有枪声.
由此还可推出第N天听到枪声,说明有N只病狗.