数据结构
M_Lter
这个作者很懒,什么都没留下…
展开
-
hdu 6183 Color it
题目链接更新,区间查询--首先想到的都会是线段树,根据每种颜色建树,cnum<=51,查询的横坐标是[1,x2],对于每个y找最近的点,再判断树内区间点数是不是知道线段树但不会敲?小记表同感TT,网上的模板一大堆,可是记不牢,因为没理解透彻,所以写题的我又重新看起了线段树,看到很多博主都会转一位大佬的线段树文章,小记也转了!我们先学一波线段树吧:线段树从零开始看完这个,大...原创 2018-07-15 15:06:16 · 163 阅读 · 0 评论 -
大佬的线段树详解
线段树详解By 岩之痕目录:一:综述二:原理三:递归实现四:非递归原理五:非递归实现六:线段树解题模型七:扫描线八:可持久化 (主席树)九:练习题一:综述假设有编号从1到n的n个点,每个点都存了一些信息,用[L,R]表示下标从L到R的这些点。线段树的用处就是,对编号...转载 2018-07-15 11:18:40 · 271 阅读 · 0 评论 -
hdu 6197 array array array
题目链接套模板题,求给定序列删掉k个数后能否构成非递增,非递减序列。可以套用最大非递减子序列模板求出子序列长度,比较长度大小是否等于n-k。最大非递增子序列长度,只需先把输入数组反过来,再套用最大非递减子序列模板即可。#include<iostream>#include<cstdio>#include<cstring>#include&l...原创 2018-07-17 09:18:44 · 143 阅读 · 0 评论 -
hdu 5884 Sort
题目链接给定n个数,找出一次合并的数量k的最小值满足合并n个数的代价最少且不超过上限代价T。二分+构造k叉哈夫曼树,求得代价最小。也可以用队列+k叉哈夫曼树也能求。#include<cstdio>#include<cmath>#include<algorithm>using namespace std;typedef long long l...原创 2018-07-24 18:55:09 · 142 阅读 · 0 评论 -
HDU - 1276 士兵队列训练问题
题目链接简单模拟题,在人数超过3个以上进行处理。可以队列模拟,也可以直接用数组模拟:将一开始每个人都置为0,当每次计数满足要求时置为1,再重新计数。最后输出数组里为0的编号即可。#include<cstdio>#include<cstring> #include<algorithm>using namespace std;int main()...原创 2018-08-10 08:35:56 · 185 阅读 · 0 评论 -
HDU - 5443 The Water Problem
题目链接给定一个n大小的数组的数,问区间[L,R]内的最大值。1.直接暴力,每次从L位置开始遍历到R处找最大值。#include<cstdio>#include<cmath>#include<algorithm>#include<cstring>using namespace std;const int N=1000+10;...原创 2018-08-30 18:37:51 · 243 阅读 · 0 评论 -
Sagheer and Nubian Market CodeForces - 812C (二分+贪心)
题目链接n个拥有基础值的物品,有s块钱,问最多能买多少个物品。物品的价值=基础值+编号(1~n)*cnt(买的个数)。二分思想,从能买一半开始贪心买最便宜的mid个,详见代码。#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using na...原创 2018-09-28 23:14:30 · 206 阅读 · 0 评论