P1024 一元三次方程求解

P1024 一元三次方程求解_第1张图片
思路:一元三次方程有3个不相同的根,说明曲线必然是下面俩种情况中的其中一种,

P1024 一元三次方程求解_第2张图片
那我们的思路就很清晰了,构造一个三次函数,f(x) = ax^3 + bx^2 + cx + d,对这个三次函数进行求导,导数为0的所对应的点为极值点,然后我们只需要讲整个x轴分成三个区间[-∞, p1), [p1, p2], (p2, +∞), (p1:第一个极值点的横坐标,p2:第二个极值点的横坐标),然后可以选择用二分或者牛顿迭代法无限逼近,直到达到题目所需的精度,我这里主要介绍牛顿迭代法的解法

牛顿迭代法:首先选择一个接近函数f(x)的零点x0,计算相应的f(x0)和切线的斜率f’(x0)。然后我们计算穿过点(x0, f(x0))并且斜率为f’(x0)的直线和x轴的交点的坐标,也就是求以下方程的解
0 = (x - x0)*f’(x0) + f(x0)
我们讲新求得的点的x坐标命名为x

你可能感兴趣的:(洛谷)