浮点数二分
1 | double l=0,r=n; |
例题:给定$a,b,c,d$,求$ax^3+bx^2+cx+d=0$ 的三个根(保证$-100\le x_1<x_1+1\le x_2<x_2+1\le x_3\le100$),保留两位小数
分析:题目保证每两个根之差大于等于$1$,则可以从$-100$枚举到$100$,每次判断长度为$1$的区间,若端点的函数值之积小于$0$,则此区间必有一个根,二分求根($check:mid,r$的函数值之积小于$0$)
代码实现:
1 |
|
1 | double l=0,r=n; |
例题:给定$a,b,c,d$,求$ax^3+bx^2+cx+d=0$ 的三个根(保证$-100\le x_1<x_1+1\le x_2<x_2+1\le x_3\le100$),保留两位小数
分析:题目保证每两个根之差大于等于$1$,则可以从$-100$枚举到$100$,每次判断长度为$1$的区间,若端点的函数值之积小于$0$,则此区间必有一个根,二分求根($check:mid,r$的函数值之积小于$0$)
代码实现:
1 |
|