思路:反向思考,假设他们最初捕到的鱼总数为x条,那么A醒来时剩下的鱼数为$ rac{5}{6}x+1$,则A分给每个人的鱼数为$ rac{1}{6}( rac{5}{6}x+1)$。B醒来时剩下的鱼数为$ rac{5}{6}( rac{5}{6}x+1)+1$,则B分给每个人的鱼数为$ rac{1}{6}( rac{5}{6}( rac{5}{6}x+1)+1)$。以此类推,最后F分给每个人的鱼数为$ rac{1}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}x+1)+1)+1)+1)+1)$。由题意可知,每个人最后拿到的鱼数都是相等的,所以可以列出方程:

$$\begin{aligned}\frac{1}{6}( rac{5}{6}x+1)&= rac{1}{6}( rac{5}{6}( rac{5}{6}x+1)+1) &= rac{1}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}x+1)+1)+1) &= rac{1}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}x+1)+1)+1)+1) &= rac{1}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}x+1)+1)+1)+1)+1) &= rac{1}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}( rac{5}{6}x+1)+1)+1)+1)+1)+1)\end{aligned}$$

解方程得到$x=194$,即他们最初捕到的鱼数为194条。每个人最后拿到的鱼数为32条,而他们实际上分到的总鱼数为$6 imes 32=192$条,因此他们至少要补充2条鱼。

C语言编程:六人捕鱼问题 - 算法详解及求解

原文地址: https://www.cveoy.top/t/topic/oZun 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录