自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

varinic 的博客

弱弱弱

  • 博客(9)
  • 收藏
  • 关注

原创 hihoCoder - 1116 - 计算 (线段树区间合并)

线段树区间合并的题目套路就是每一段维护1.当前段的答案data[k],2.当前段所有前缀Left[k]3.当前段所有后缀Right[k]合并时由当前段的左右子节点的data转移当前段,还有左子节点的后缀与右子节点的前缀合并形成的区间对当前段的贡献。然后维护当前段Left,Right就ok了。现在很少看见用vect或者map维护每一段前后缀的了(我会说是跑的太慢了吗)

2016-09-25 15:32:31 652

原创 hdu 5884 Sort k叉哈夫曼树+双队列优化

Problem DescriptionRecently, Bob has just learnt a naive sorting algorithm: merge sort. Now, Bob receives a task from Alice.Alice will give Bob N sorted sequences, and the i-th sequence includ

2016-09-17 20:17:21 1083

原创 HYSBZ 1067 RMQ

题意很清楚,坑点就是l或是r不存在时,要二分去找临近位置,然后统计这之间的max。#include #include #include #include #include #include #include using namespace std;const int maxn=2e5;map mp;/*数组下标从1到n,询问[l,r]最小值*/int a[ma

2016-09-16 15:44:09 462

原创 poj 3368 统计区间出现次数最多数个数 RMQ

对上升序列如:1 1 2 2 2 3 3 4 5 5 ....... 统计区间出现次数最多数个数。我们可以构造一个b[]数组,if(a[i]==a[i-1])b[i]=b[i-1]+1;else b[i]=1;这样对上述例子,b[]数组有1 2 1 2 3 1 2 1 1 2那么对询问区间[l,r],如果l在数与数交界处,那么直接查询l,r区间最大值。否则要知道与a[l]相

2016-09-16 14:08:09 2774

原创 hdu 5875 Function 二分+rmq

按照题意每次到当前点右边找比当前点小并且最接近当前点的点p。如果你能在O(1)的时间里查询[l,r]区间最小值,那么就可以二分查找p。#include #include #include #include #include #include using namespace std;const int maxn=100000+5;int a[maxn];int dp

2016-09-13 18:52:49 436

原创 hdu 5869 Different GCD Subarray Query 离线+树状数组

题意:给你n个数,每次查询[l,r]区间里所有子区间不同gcd的个数。我们先来看如何查询区间不同数的个数: spoj D-query 区间不同数个数 主席树||离线+树状数组上面这道题讨论的是单个点,既对答案有贡献的是单个点,而这里是子区间要怎么处理。同理,对每个gcd有多个子区间,定义子区间左端点为子区间大小,那么只有最大的那个子区间才是有效的。这里还要用到gcd性质

2016-09-13 16:38:00 497

原创 varinic的模板

这里是varinic的模板字符串处理1.KMP/*pku3461(Oulipo), hdu1711(Number Sequence)这个模板 字符串是从0开始的Next数组是从1开始的*/#include #include using namespace std;const int N = 1000002;int next[N];char S[N], T[N

2016-09-06 21:48:34 992

原创 poj 3667 Hotel 线段树区间合并

至此,扫描线,线段树区间修改更新,可持久化线段树,线段树区间合并 等线段树题目全部过了一遍。接下来还有好多高级数据结构等着我去学。trick:线段树区间合并时,cover只需一个,因为一段区间只能处于一种状态,我作死开了两个cover分别对应两种情况,好处是一目了然,坏处是更新完一个cover还要更新另一个,(因为一段区间只能处于一种状态) QAQ #include

2016-09-02 13:40:15 438

原创 hdu 5790 prefix 主席树

这道题目其实和 spoj上的d-query 差不多  http://blog.csdn.net/mtrix/article/details/52335617,本质都是统计连续区间不同数个数,本来有 离线+树状数组 和在线主席树 两种做法,这里强制在线那就主席树,对每个前缀要判断它有没有出现过可以用hash也可以字典树。#include #include #include

2016-09-01 18:07:07 842

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除