问python五人分鱼解题思路区别

各位python俊男靓女们!第一种解题方法错在哪了,为什么运行出来的结果差距这么大!

#五人分鱼解题1
def fishnum(i):
    for y in range(5):
        if (i - 1) % 5 == 0:
            i=(i - 1) / 5 * 4
            return True
            continue
        else:
            return False
            break
a=1
while True:
    i=a
    if fishnum(i):
        print("至少{}条鱼".format(a))
        break
     else:
       a+=1
       continue
#output
至少1条鱼

```python
#五人分鱼解题2
a=1
while True:
    total,enough=a,True
    for y in range(5):
        if (total - 1) % 5 == 0:
            total=(total - 1) / 5 * 4

        else:
            enough=False
            break
    if enough:
        print("至少{}条鱼".format(a))
        break
    else:
       a+=1
       continue
#output
至少3121条鱼


你仔细看逻辑关系
第二种算法里面循环5次,total是不断在循环,不断增加的
而第一种,循环一次,直接return了
说白了,第二种要求5个人都分到鱼,而第一种只要求第一个人分到鱼,后面的人不管了,那能一样吗