条件: 数组有序 每次查找都跟数组中间位置数字比较大小,如果要找的数字比中间位置的数字小,那查找就从【0,中间位置的下标前一个位置】这个范围查找;如果要找的数字比中间位置的数字大,那查找的范围就变成【中间位置下标的下一个位置,最大位置】。如果要找的数字正好等于中间位置上的数字,那就找到了; 时间复杂 ...
分类:
其他好文 时间:
2021-06-02 12:02:48
阅读次数:
0
map源码 //第一个参数传入一个函数,第二个参数为隐式参数,返回值和集合的类型一致都是B def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That = { //方法内部定义builder方法 def bu ...
分类:
其他好文 时间:
2021-06-02 10:36:00
阅读次数:
0
#include<bits/stdc++.h> using namespace std; typedef long long ll; namespace MCMF { const int MAXN = 10000, MAXM = 10000, INF = 0x7fffffff; int head[M ...
分类:
其他好文 时间:
2021-05-25 17:42:56
阅读次数:
0
P3606 : 二分 + 一元二次方程 首先想到单调性上二分,那么可以设 \(t_i\) 表示每一层增加一头牛时间的改变量。 那么 \(t_i=a_i \div [c_i\times(c_i+1)]\)。 由于每一个之间二分的 \(t_i\) 实际上都差不多,所以不用去管哪个是哪个的 \(t_i\) ...
分类:
其他好文 时间:
2021-05-24 10:43:44
阅读次数:
0
补题链接:Here 转移方程的具体含义我在代码注释里写出来了, 很好理解 这道题的难点在于如何表示状态, 一旦找到状态表示方法 只要根据题意做转移就行了 最后的答案就是 \(dp[n][0][0] + dp[n][1][0]\) 即最后一个位置有火的方案数加上最后一个位置没有火的方案数 注意不要忘了 ...
分类:
其他好文 时间:
2021-05-24 08:32:39
阅读次数:
0
给定三维空间内$n$个整点,求一个整点到它们曼哈顿距离的最大值最小。 ...
分类:
其他好文 时间:
2021-05-24 07:28:20
阅读次数:
0
题意 直线上有$n$个植物,第$i$棵植物坐标为$i$,浇一次水会长$a_i$高。 你最开始在$0$点,执行$m$次操作。每次操作必须往左或右走一步并给走到的那棵植物(如果有)浇一次水。 最大化$m$次操作后最矮的植物的高度。 做法 二分答案,题目转化成,每个位置要至少经过几次,然后求最小次数。 考 ...
分类:
其他好文 时间:
2021-05-24 07:11:01
阅读次数:
0
浮点数二分 模板 假如求平方根 #include<bits/stdc++.h> //万能头文件 using namespace std; int main() { double x; cin>>x; double l = 0, r = max(1, x); while (r - l > 1e-8) ...
分类:
其他好文 时间:
2021-05-24 04:47:23
阅读次数:
0
##AC代码 #include<stdio.h> #include<string.h> #include<iostream> #include<queue> using namespace std; #define inf 0x3f3f3f3f const int N=1020; int e[N][ ...
分类:
其他好文 时间:
2021-05-24 03:46:14
阅读次数:
0
题目: http://acm.hdu.edu.cn/showproblem.php?pid=5241 题面: Sample Input 2 0 2 Ouput Case #1: 1 Case #2: 1024 题意: M会使用n种语言,M的九个朋友会的语言都是M的子集,并且给出九个朋友会的语言的关系 ...
分类:
其他好文 时间:
2021-05-24 03:13:28
阅读次数:
0