题目链接:http://poj.org/problem?id=2777
题目意思:就是问你在询问的区间里有几种不同的颜色
思路:这题和一般的区间修改差不多,但是唯一不同的就是我们要怎么计算有种颜色,所以这时候我们就需要把延时标记赋予不同的意义,当某段区间有多种颜色时就赋值为-1,当为一种颜色时就把它赋值为这个颜色的号数。这儿我们要怎么统计询问区间不同的颜色数叻,为了不重复计算同一种颜色,那么我...
分类:
其他好文 时间:
2014-07-29 22:05:22
阅读次数:
418
题目链接:hdu 4983 Wow! Such Sequence!
题目大意:就是三种操作
1 k d, 修改k的为值增加d
2 l r, 查询l到r的区间和
3 l r, 间l到r区间上的所以数变成最近的斐波那契数,相等的话取向下取。
解题思路:线段树,对于每个节点新增一个bool表示该节点以下的位置是否都是斐波那契数。
#include
#include
#includ...
分类:
其他好文 时间:
2014-07-29 22:03:32
阅读次数:
327
题目链接:http://poj.org/problem?id=3264
题目大意:就是给你一串数,问你最大数和最小数的差值。。。。。。。
思路:最基本的线段树,只需要建树和查询,修改都省啦,但是查询要写两个,一个查询最大值,一个查询最小值。。。。。。然后就能AC掉。。。。。但是话说poj把它分类到RMQ中。。。。
code:
#include
#include
#i...
分类:
其他好文 时间:
2014-07-29 22:03:22
阅读次数:
404
Wow! Such Sequence!
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 352 Accepted Submission(s): 104
Problem Description
Recently, D...
分类:
其他好文 时间:
2014-07-29 22:02:32
阅读次数:
456
HDU 4893 Wow! Such Sequence!
题目链接
题意:给定一个序列,3种操作,单点添加值,查询区间和,把区间和变成最接近的婓波那契数
思路:线段树,就是第三个操作麻烦,就在结点添加一个值,标记它区间是不是都是婓波那契数了,然后修改区间的时候,如果区间是了就不用修改,如果不是就继续往后一层推即可
代码:
#include
#include
#in...
分类:
其他好文 时间:
2014-07-29 22:02:22
阅读次数:
407
思路:
线段树走起。。
写完这题就退役T^T
单点更新的时候直接找到这个点的最近fib,然后维护当前和 和 fib的和
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define L(x) (x<<1)
#define R(...
分类:
其他好文 时间:
2014-07-29 22:02:02
阅读次数:
392
求区间内最大数和最小数的差,用两棵线段树,一个维护区间最大值,一个维护区间最小值。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define QUADMEM...
分类:
其他好文 时间:
2014-07-29 22:00:02
阅读次数:
259
题目链接:http://poj.org/problem?id=3368
题目大意:给你一段不下降的序列,求给定区间里出现次数最多的那个数字的次数。
思路:首先看到这题时,第一感觉线段树,但是仔细一看问题来啦,用线段数我怎么才能计算出某段区间里出现的那个数,因为出现最多的那个数可能不是在他它的左儿子上也不是在它的右儿子上,可能在当他们合并成一个区间时就出现啦,但是这儿我们需要注意...
分类:
其他好文 时间:
2014-07-29 21:59:32
阅读次数:
334
N个数为非递减顺序,给定范围l,r,求[l,r]区间内数字出现频率最高的次数。
可以用线段树来做。先说查询,我们设节点P对应的区间为[a, b],左孩子节点为p1,右孩子节点为p2,那么 P也许不等于 max(p1 , p2),原因是如果p1中频率较低的某个数与p2中出现频率较低的某个数是同一个数,并且两者出现次数加起来大于max(p1, p2),但是,题目说N个数为非递减顺序排...
分类:
其他好文 时间:
2014-07-29 21:57:22
阅读次数:
327
HDU 4891 The Great Pan
签到题 他怎么说你就怎么做就好了 注意做乘法时候会爆int
HDU 4893 Wow! Such Sequence!
题意:
n个数一开始都是0 你有三种操作 1操作在k位置加d 2操作输出[l,r]区间的和 3操作把[l,r]内的所有数变成离它最近最小的斐波那契数
思路:
操作1、2就是线段树基本 那么3怎么搞? 为了不超时显然要延迟更新 那么如果更新到[l,r]区间我们如何更改值呢
其实问题可以被巧妙的存储数据解决
我们记val为点上的值 ...
分类:
其他好文 时间:
2014-07-29 21:51:52
阅读次数:
477