二分
无
大 聪 明
Big Smart
展开
-
OpenJ_Bailian - 4142 二分法求函数的零点(二分 超时优化)
链接 有函数: f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已知 f(1.5) > 0 , f(2.4) < 0 且方程 f(x) = 0 在区间 [1.5,2.4] 有且只有一个根,请用二分法求出该根。 Input 无。 Output 该方程在区间[1.5,2.4]中的根。要求四舍五入到小数点后6位。 分析:求导可以该函数是单调递减的,所以开double遍历直接套二分即可,但是while(l<=r)会超时,因为要求只输入小数原创 2021-12-04 11:05:19 · 440 阅读 · 0 评论 -
#10015. 「一本通 1.2 练习 2」扩散(二分+最短路径)
我是传送门~ 分析: 方法一:二分查找最小的时间,用并查集,如果两个点之间的距离小于等于时间t*2,则两个点可以合为并集;遍历完所有点后查看是否都满足。 AC代码: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; struct node { int x,y; }a[55]; int n,d[55][55],fa[55]; inline int abs(int原创 2021-10-02 19:05:35 · 168 阅读 · 0 评论 -
#10014. 「一本通 1.2 练习 1」数列分段 II(二分)
我是传送门 分析:采用二分逐步测试最终可能的结果,所以前期先求出范围,然后采用二分,二分模板是查找筛选,这题是根据范围筛选; AC代码: #include<stdio.h> #include<algorithm> using namespace std; int a[100010]; int main() { int n,t,i,left,right,cut,sum,mid; left=right=0; scanf("%d%d",&n,&t); for原创 2021-09-28 18:09:10 · 135 阅读 · 0 评论