全概率公式,B不好算,把B用A来计算 贝叶斯公式,就是条件概率,套用全概率公式 由概率的关系不能推出事件的关系 概率单调性 ...
分类:
其他好文 时间:
2020-02-04 14:06:47
阅读次数:
292
单调栈、单调队列及优先队列 [TOC] 1.单调队列 单调队列的描述:指队列中元素之间关系具有单调性,而且队首和队尾都可以出队,但是只有队尾可以进行入队操作。 其重要作用是找到前n个后者后n个数的最值。 其具体操作是:假设单调队列是单调递减队列,假设在插入元素v时,将队列尾部的元素同v比较,如果队列 ...
分类:
其他好文 时间:
2020-02-02 23:24:07
阅读次数:
75
数据结构 1. 平衡树 2. 可持久化数据结构(主席树) 3. 莫队 4. LCT 5. 分治(点分治 + CDQ) 6. 树套树 DP 1. 后效性处理之高斯消元 2. 决策单调性 3. 树形DP(换根,倍增) 字符串 1. KMP(fail树,DP) 2. AC自动机 3. Trie(可持久化T ...
分类:
其他好文 时间:
2020-01-30 09:22:00
阅读次数:
95
双指针算法本质上就是将具有单调性的算法复杂度为O(N^2)的朴素算法通过双指针优化到O(n)的一种优化方法。是一种十分常用的算法。 设计双指针算法我们一般先写出它的朴素算法,然后按照模板: for( int i = 0, j = 0 ; i < n ; i ++) { //check()是按照题目逻 ...
分类:
编程语言 时间:
2020-01-29 19:51:43
阅读次数:
83
牛的数量<=1e5,字段长度在1和1e5之间,所以如果枚举所有字段的话最坏情况会超,所以这里我们考虑其他方法,因为同一个圈子里牛的最大数量是2000,所以最多有1e5*2000=2e8,又显然答案是有单调性的,二分的话复杂度在log(2e8) #include <bits/stdc++.h>usin ...
分类:
其他好文 时间:
2020-01-26 15:52:09
阅读次数:
39
二分查找常用与一个 有序 序列或一个具有 单调性 问题中。 8.1 编程思路: 1. 设有一数组 $a[n]$ ,数组中的元素按值从小到大排列有序。用变量 $low, high$ 和 $mid$ 分别指示待查元素所在区间的下界、上界和中间位置。初始时,$low=0,high=n 1$ ,查找 $x$ ...
分类:
其他好文 时间:
2020-01-24 14:32:14
阅读次数:
74
决策单调性:状态转移的最优决策点单调递增 可以用二分栈或者分治来实现 二分栈中存有三元组$(l,r,pos)$,$l$代表决策的作用起点,$r$代表决策的作用终点,$pos$是决策点的位置 若当前状态$i$已经不在栈头决策点的范围内,就弹出栈头 若位置为$i$的决策优于栈尾的决策,才进行下一步操作, ...
分类:
其他好文 时间:
2020-01-23 00:03:49
阅读次数:
63
一般对于不容易正向求解的题,我们往往可以枚举答案并进行check,而对于具有单调性的答案或其映射来说,我们可以二分答案并进行check。 例题1: codeforces 1288 D - Minimax Problem (传送门) 题意: 给定n行 长为m的序列; 找出任意两行序列,使得 两行序列 ...
分类:
其他好文 时间:
2020-01-22 12:36:29
阅读次数:
46
A. 序列 变化次数线段树很不好维护。 不妨考虑根号做法,暴力一部分。 发现对整块的修改,add操作单调性不变,按w+add sort后次数的变化一定在前缀,所以暴力保持整块内部有序。 修改时两边重构,取max时lower_bound,然后在该位置差分,更新max标记时要减去当前的add标记,相当于 ...
分类:
其他好文 时间:
2020-01-17 09:38:22
阅读次数:
79
满足单调性的情况下,可以用二分法找出答案,复杂度为logn 1.在整数范围内,闭区间[l,r]的二分,以l==r为结束条件。边界条件需要考虑几个问题,当l或r更新的时候范围是否有缩小(若无则选入死循环),是赋得新值之后l是否==r而不是>r; 2.根据题目设计选取mid归属于左半区间还是右半区间,假 ...
分类:
其他好文 时间:
2020-01-11 09:25:59
阅读次数:
96