共回答了21个问题采纳率:85.7%
挺好玩的,我做了一下,得出是3121,不知道对不对,楼上的都认为最后一个人(E)分的时候只剩下6条,然后他丢掉一条,把5条分成5份,也就是留下4条给别的人,自已拿走一条,也就要所谓的每人最少分得一条,但是这是不可能的,因为E分的鱼其实是D好心留下来的4份(给其他的4个人的)!但是6怎么分成4份?所以说D不可能留下6条鱼给E,我的代码也发给你看看,
#include
void main(){
int all=2;
int aout=2;//用来放最终结果
while(true)
{ int i=5;
int y=0;
all=aout;
while(i>0)
{
if(all!=1&&all%5==1)
{
all=(all-(all/5)-1);丢掉一条,并分成5份
i--;//做五次
y++;}
else i=0;
}
if(y==5)
{ printf("他们打了%d条鱼",aout);
break;
}
aout++;
}
}
}
然后在网上看了看其他人的做的,答案也是3121!但是他们的方法要比我的好,写的思路要好一些,所以说3121才是正确的答案!!!!!。
楼上楼下的都曲解题意了!
1年前
7