AcWing 790. 数的三次方根
AkariAcWing 790. 数的三次方根【简单】
一、题目描述
给定一个浮点数 n,求它的三次方根。
输入格式
共一行,包含一个浮点数 n。
输出格式
共一行,包含一个浮点数,表示问题的解。
注意,结果保留 6 位小数。
数据范围
−10000 ≤ n ≤ 10000
输入样例:
1000.00
输出样例:
10.000000
二、分析
浮点数二分还是很简单的,最开始使劲设置最大和最小,精度一般设为 1e-8
,然后根据条件写 check()
,发现符合就向左或向右逼近,直到结果的差,精度在可以接受的范围内。
以本题来说,给出的数据相当于 y
,而我们输出的相当于 x
,即:y = x*x*x
。
因为 −10000 ≤ n ≤ 10000,开三次方根不会超过 100,所以 l、r 设置为 -100, 100
即可。
保留 6 位小数,所以 eps = 1e-8
。
实际上,21*21*21 < 10000 < 22*22*22
,最小开到 22 即可。
三、AC代码
/** |
四、牛顿迭代法
hhh,大佬太强了······
评论
匿名评论隐私政策
TwikooWaline
✅ 你无需删除空行,直接评论以获取最佳展示效果