题解 | #游游开车出游#(Python)
游游开车出游
https://www.nowcoder.com/practice/667369e08b2f498c89a935df0af921b3
# 给出 v,x,y,求 y/(v+x*t)+t 最小 # 凹函数,先下降再上升,三分法求解 v, x, y = map(float, input().split()) def cal(t): return y/(v+x*t)+t left = 0 right = 2e9 # 题目要求精确率1e-6 while(right-left>1e-7): fm = (right-left) / 3.0 fl = left + fm fr = fl + fm if (cal(fl)<cal(fr)): right = fr else: left = fl print('%0.9f'%cal(left))#15天刷题#