首先看上来就可以进行二分,但是答案是n个,所以我们进行整体二分,每次分成两个集合,一个集合可以完成,一个不可以,然后继续二分即可。 学习了Vergil学长的做法,偷懒用了vector,然后luogu上90分,懒得用数组去模拟实现了(都是细节)——by VANE ...
分类:
其他好文 时间:
2017-12-19 01:18:41
阅读次数:
126
我们开门见山,讲讲一道sb题: 给你一个数组,查这个数组的第x大元素。 排序?可以 二分?怎么做啊? 二分出一个mid,判断这个数组中有多少个数小于等于mid,如果个数大于等于x,就递归到[l,mid]区间,否则是[mid+1,r]区间,这样递归下去就能得到结果。 怎么计算小于等于mid的个数? f ...
分类:
编程语言 时间:
2017-12-14 19:25:15
阅读次数:
148
http://www.lydsy.com/JudgeOnline/problem.php?id=3110 整体二分+区间修改树状数组维护 ...
分类:
其他好文 时间:
2017-12-09 22:33:33
阅读次数:
121
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2527 题意: 有n个国家和m个空间站,每个空间站都属于一个国家,一个国家可以有多个空间站,所有空间站按照顺序形成一个环,也就是说,m号空间站和1号空间站相邻。 现在,将会有k场流星雨降临,每 ...
分类:
其他好文 时间:
2017-12-06 19:40:36
阅读次数:
140
【bzoj2738】矩阵乘法 Description 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数。 Input 第一行两个数N,Q,表示矩阵大小和询问组数;接下来N行N列一共N*N个数,表示这个矩阵;再接下来Q行每行5个数描述一个询问:x1,y1,x2,y2,k表示找到以 ...
分类:
编程语言 时间:
2017-12-04 14:07:04
阅读次数:
188
前言 本来想要只讲CDQ分治的,但由于整体二分和CDQ分治有一些相似之处,便顺藤摸瓜一起讲了 在讲解之前,先普及一下在线算法和离线算法的定义 在线算法: 可以以序列化的方式一个一个的处理输入,不必事先知道所有输入数据 离线算法: 必须事先知道所有的输入数据 (例如选择排序就是一个离线算法,而插入排序 ...
分类:
其他好文 时间:
2017-11-26 18:47:14
阅读次数:
161
2738: 矩阵乘法 Description 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数。 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数。 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数。 Input 第一行两个数N,Q, ...
分类:
编程语言 时间:
2017-10-25 15:29:02
阅读次数:
226
【BZOJ4538】[Hnoi2016]网络 Description 一个简单的网络系统可以被描述成一棵无根树。每个节点为一个服务器。连接服务器与服务器的数据线则看做一条树边。两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务器自身)。由于这条路径是唯一的,当 ...
分类:
编程语言 时间:
2017-10-15 17:38:32
阅读次数:
200
整体二分,按时间顺序依次考虑对于权值落在$[l,r]$内的所有操作。 对于每个修改操作,若权值范围完全包含了$[l,r]$,那么在更深层的分治中它都完全包含它,对每个询问的贡献是定值,因此在当前层将贡献及时加给后面的每个询问即可。否则将该修改操作分裂成最多$2$个子操作,并往下递归分治。处理贡献均可 ...
分类:
其他好文 时间:
2017-10-09 10:01:49
阅读次数:
155
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2738 题意:求出子矩阵$K$小值。 果然除了最小割题面给什么算法不能用什么算法 这个玩意……实际上并没有强制在线的要求……退一步讲这个时空要求也不太适合主席树……然而……$wcx$神犇正面硬上… ...
分类:
其他好文 时间:
2017-10-03 12:04:28
阅读次数:
193