RMQ(Range Minimum/Maximum Query)区间最值查询,即给出长度为n的数组A,以及m组询问s、t(s<=t<=n),返回区间[s,t]中的最值。 基于线段树的方法实现的话,建树O(n),查询O(logn),相比ST,适合用于n更大,m较小的情况。 https://blog.c ...
分类:
其他好文 时间:
2019-07-31 16:51:57
阅读次数:
96
ZKW线段树 数组定义 单点修改区间最值 区间修改单点查询 ...
分类:
其他好文 时间:
2019-07-31 15:18:35
阅读次数:
101
tip: CDQ 分治主要处理三维偏序问题,解题时主要是找出比较量(三个或两个),并找出适当排序顺序(有时不需))。 CDQ 分治常常与树状数组搭配,树状数组主要用来统计前缀和(权值前缀和 / 排名)、最值、逆序对。 实战: T1:陌上花开 题干: 有 n 朵花,每朵花有三个属性:花形 (s)、颜色 ...
分类:
其他好文 时间:
2019-07-27 09:34:29
阅读次数:
67
概述: RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j之间的最小/大值。这两个问题是在实际应用中经常遇到的问题,下面介绍一下解决这两种问题的比较高效的 ...
分类:
编程语言 时间:
2019-07-26 13:14:04
阅读次数:
113
0、T1现场推模板,浪费大量时间,导致T2时间不足,公式推错。T2不会Crt。 总体节奏稍慢。gcd推导过程混乱。应减少时间损耗。 1、方程的解:exgcd。背模板。理解模板。 skyh等人:a,b>0时,公式最值做差。a||b<0,一堆特判。 我:先把x抬到>=1,y伴随变换,再把y降到>=1,记 ...
分类:
其他好文 时间:
2019-07-24 09:33:45
阅读次数:
78
总之这题如果静下心来仔细想,拿个80分并不难 问题:扩欧只会板子,并未理解,扩欧解出来的是一组解而已,并没有最值等的特殊性。 ax+by=c必须在c能整除gcd(a,b)的情况下,此时会有n多组解,设d=gcd(a,b);x=(c/d)*x0+k*(b/d),y=(c/d)*x0-k*(a/d); ...
分类:
其他好文 时间:
2019-07-22 19:58:44
阅读次数:
82
迅速补档,为A*做一下铺垫… 概念定义 二叉堆就是一个支持插入、删除、查询最值的数据结构。他其实是一棵完全二叉树。那么堆一般分为大根堆和小根堆 大根堆 树中的任意一个节点的权值都小于或者等于其父节点的权值,则称该二叉树满足大根堆性质。 小根堆 树中的任意一个节点的权值都大于或者等于其父节点的权值,则 ...
分类:
其他好文 时间:
2019-07-21 20:08:19
阅读次数:
134
将每个点拓展为矩形,将$y$离散,延$x$轴扫描,每次更新最值 用了一百年的pushdown操作疑似有问题,WA了一发,y数组没开够又RE了一发。。。 话说POJ上的情书让我回忆起童年那个彪悍的女孩,一晃十年了 Fleeting time does not blur my memory of you ...
分类:
其他好文 时间:
2019-07-21 13:26:49
阅读次数:
92
一、二分 二分法,在一个单调有序的集合或函数中查找一个解,每次分为左右两部分,判断解在那个部分并调整上下界,直到找到目标元素,每次二分都将舍弃一般的查找空间,因此效率很高。 二分常见模型 1、二分答案 最小值最大(或是最大值最小)问题,这类双最值问题常常选用二分法求解,也就是确定答案后,配合贪心,D ...
分类:
其他好文 时间:
2019-07-18 19:58:44
阅读次数:
150
题目:poj.org/problem?id=3264 题意:求一段区间内最大值与最小值的差。 看到区间最值首先想到RMQ--ST算法。但本题出现在了kuangbin专题的线段树里。 用线段树也无思维难点,但有两个坑: 1. 查询函数中,区间不包含时的返回值。 2.用cin,cout会TLE。用c的输 ...
分类:
其他好文 时间:
2019-07-13 13:22:03
阅读次数:
96