二分与三分
Max_1_
这个作者很懒,什么都没留下…
展开
-
二分法解方程
单调函数零点可用二分法求 基本模板 double f(double a){} //单调函数 .... while(right-left>1e-10){ mid=(right+left)/2; if(f(mid)>0) left=mid; //根据是递增还是递减判断 else right=mid; ...原创 2018-01-24 16:25:12 · 687 阅读 · 0 评论 -
poj2456最小值最大化问题
题目大意:有n个牛棚,先将m头牛分别分进不同的牛棚里,假设这些牛凉凉间的最小距离为K,求k的最大值 思路:最小值最大化问题。。。。先对位置排序,对k不断二分枚举其最大值。 #include #include #include using namespace std; int A[100010],n,m; bool f(int a){ //检查函数,当前判断当前最小原创 2018-01-24 08:46:01 · 594 阅读 · 0 评论 -
poj3273区间最优解问题
题目大意:给定一组数,将其分成连续的m段,记这m段中的最大值为k,求k的最小值 思路分析:可确定最大值k在最大元素和所有元素和之间,因此可二分确定K的最小值使其满足条件。还要注意检查函数中的边界值。 #include using namespace std; int n,m,A[100010]; bool f(int a) { int i,sum,cnt; su原创 2018-01-24 00:02:47 · 210 阅读 · 0 评论 -
csuoj2112(二分,bfs)
题目大意:给n*n的网格,起点S和终点T,网格中会包含一些着火点,每秒向四周蔓延,每秒的最大移动步数为k,输出可在起点停 留的最大时间 思路分析:先预处理出所有点的最短着火时间,二分时间,bfs求出到达每个点的最短路程dp[i][j],通过dp[i][j]/k是否小于着火时间,判断是否能到达这个点。 代码: #include<iostream> #include&...原创 2018-07-25 08:45:31 · 127 阅读 · 0 评论