一个复杂的关于python数学问题

-小A: 一年365天,每天进步1%,不停歇
-小B: 一年365天,每周工作5天休息2天,休息日下降1% ,那工作日要多努力才能和小A一样呢?
(每周工作5天休息2天,计算工作日的努力参数是多少才能与每天努力1%一样。)

求各位Da Lao解决一下

这个题目似乎不够严谨:一年内第一天是周几不确定,这将导致结果的不确定。这不难理解,最简单的证明就是一年有52周零一天,这一天可能是工作日,也可能是休息日。

如果假定第一天是周一(假定周几都可以,周一最简单)的话,思路是这样的:

  1. 设小B工作日进步x;
  2. 第1周连续5天进步,然后连续2天退步,那么1周后小B的水平为((1+x)^5)*((1-0.01)^2),记作w;
  3. 52周(364天)后,小B的水平为w^52,记作v;
  4. 再过1天,小B的水平为v*(1+x);
  5. 解方程v*(1+x) - (1+0.01)^365 = 0,即得解。

代码如下:

from scipy.optimize import fsolve
def f(x): # 定义残差函数
    return pow(pow(1+x, 5)*pow(1-0.01, 2), 52) * (1+x) - pow(1+0.01, 365)

result = fsolve(f, 0.01) # 给出一个参考初始解0.01,加快速度
print(result) # 显示方程的解
[0.01808147]
f(result[0]) # 验证残差,非常小
-2.1316282072803006e-12

关于求解非线性方程,可参考我这一篇博客的第6节:

是我理解错了吗,这不是简单数学题吗
365天,假设这一年第一天是星期一,那么365/7=52余数为1.那么365天中有工作日52x5 +1= 261天,周末有52x2=104天。
小A365天进步365x1% = 365%
设进步参数为m
小B365天总进步261xm - 104x1% = 365%
m 约为1.796934865900383
python计算
m = (365%-104x1%)/ 261

题目意思说的不是很明确,是指下面的意思吗?

img


其中a_0是小A初始努力参数,b_0是小B的初始努力参数,上面式子即计算n天后,它们的努力的总和。