花费 56ms 找到187521条记录
1 ZJ2017 F Heap Partition贪心+线段
2018年04月24 - 的节点按照升序输出。 分析:之前有一道天梯赛L2列车调度的问题,发现策略基本上是差不多的。能放就放,选择最接近的放,否则就新建一棵。 那么问题来了,什么时候可以放,怎样更快的获得放的位置。而且 数据是小于10^5的,那么可以直接上线段搞了。注意二叉树的保存! #include <
2 浙江14届F.Heap Partition(ZOJ 3963)[贪心][二分]
2017年04月23 - 题意 : 构造尽可能少的一种结构,父节点的值小于等于子节点,而且子节点在序列中出现在父节点后面。而且每个父节点至多有两个子节点。分析 : 贪心即可,首先,我们先对这个序列排个序,得知每个数的rank 然后对原序列从左到右遍历,维护一个set,存的是这个数的rank, 对于每个
3 线段1
2018年08月24 - 线段 线段线段的唯一区别是它们所维护的东西不一样: --线段维护数的个数,数组下标代表整个值域(如果值域太大,可以离散化,后面会有介绍) --线段则是直接维护每个数 有什么用呢? 1.寻找第K大(整个区间,即左边界为1,右边界为n) 2.逆序对(呵呵归并
4 ZOJ 3963 - Heap Partition - 贪心,平衡
2018年03月12 - 题目大意: 定义“可堆序列”为:可以用该序列的所有元素组成一个小根堆(父子节点的可以相同),其中父节点在原序列中的位置一定在子节点之前。 给定一个长为N的序列,将它划分成最少的“可堆序列”,并输出任意一种划分方案。 N<=1e5,所有测试点的N之和<=2e6。 利用贪心
5 线段&线段合并
2018年10月23 - 线段 所谓线段,就是一种维护而非下标的线段,我个人倾向于称呼它为值域线段。 举个栗子:对于一个给定的数组,普通线段可以维护某个子数组中数的和,而线段可以维护某个区间内数组元素出现的次数。 在实现上,由于值域范围通常较大,线段会采用离散化或动态开点的策略优化空间
6 线段小结
2017年09月14 - 线段大概地球人都知道了,就是以数组的下表建立线段来进行一些区间操作,这里介绍一下线段,顾名思义,其实权线段也是线段的一种。 一:线段线段与简单线段的区别就像他的名字一样,他的叶子节点存的并不是数组的下表,而是数组中数的,这种操作很简单的解决一些问题
7 逆序对—线段
2017年03月04 - (){ solve(); return 0;}大家若想更深了解线段,就看看这篇吧(KPI的线段解法) http://blog.csdn.net/Monkey_king2017cn/article/details/55805485
8 模板 线段
2015年10月27 - 安利一个好东西:线段233333 为什么说是好东西呢。因为这是一个黑科技! 首先我们来上一个例题 题目描述 Description 给定一个序列a1,a2,…,an,如果存在i小于j并且ai大于aj,那么我们称之为逆序对,求逆序对的数目 数据范围 N<=10^5。Ai<
9 送花(线段
2018年04月01 - 题目 传送门 题解 写这道题是为了写线段 看到c的范围比较小,按照C为建立线段,c的就是线段的叶子位置; 类似于平衡的做法,查询最左或最有的节点删除 代码 #include <cstdio> #include <cstring>
10 「九联考 2018」IIIDX 贪心 线段
2018年04月30 - 父亲节点的预留给去掉。 也可以换一种理解方式,就是我们每次贪心地选一个数以后,都要保证预留一些来放在这个点的子树中,于是我们就一步步做然后保证不矛盾就行了。接着在这个基础上使得解最大。 于是我们开一颗线段,就能维护上面那些区间修改和查询了。 其实线段只需要直接维护 i&

 
© 2014-2019 ITdaan.com 粤ICP备14056181号