Coder
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4288
题意:有三种类型的操作,(1)."add x",表示往集合里添加数x。(2).“del x”表示将集合中数x删除。(3).“sum”求出从小到大排列的集合中下标模5为3的数的和。集合中的数都是唯一的。
思路:这题巧妙的地方在于先离线输入,然后离散化。输入的数字按照从...
分类:
其他好文 时间:
2014-08-05 14:14:39
阅读次数:
332
A Magic Lamp
Time Limit: 2000/1000 MS (Java/Others) Memory Limit:
32768/32768 K (Java/Others)
Problem Descripti...
分类:
其他好文 时间:
2014-08-05 11:23:19
阅读次数:
240
题意:
给你一个区间,每次可以进行两种操作
1:把区间中的数全都变成x
2:把区间中大于x的数变成gcd(a[i], x)
最后输出序列。(n,m
时限 15s,暴力也能过。。。。
线段树做法,区间更新,lazy标记,到需要更新的时候才更新。
num[rt] != -1,表示 区间 L[rt]~R[rt] 所有的数都相同。
#inclu...
分类:
其他好文 时间:
2014-08-05 11:22:53
阅读次数:
187
A Simple Problem with Integers
Time Limit: 5000MS
Memory Limit: 131072K
Total Submissions: 60441
Accepted: 18421
Case Time Limit: 2000MS
Description
You have N...
分类:
其他好文 时间:
2014-08-05 11:18:29
阅读次数:
254
Description
You have N integers, A1,
A2, ... , AN. You need to deal with two kinds of operations. One type of operation is to add some given number to each number in a given interval.
The other ...
分类:
其他好文 时间:
2014-08-05 11:15:59
阅读次数:
243
线段树的第一发。哪天忘了还可以让自己找找回忆。
Input
在每个测试的第一行,有两个正整数 N 和 M ( 0
学生ID编号分别从1编到N。
第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩。
接下来有M行。每一行有一个字符 C (只取'Q'或'U') ,和两个正整数A,B。
当C为'Q'的时候,表示这是一条询问操作,它询问ID从A到B(...
分类:
其他好文 时间:
2014-08-05 11:14:34
阅读次数:
205
本题乍看像是线段树之类的区间操作,不过因为只是需要查找ip的前缀,故此其实是使用Trie来做。
这里的Trie使用到了Delete函数,这是个Trie函数中最难的函数了,当然要使用数组记录的方法水掉,也是可以的。这里不水,给出delete函数。
考点难点:
1 Trie的操作函数的灵活运用,主要难点是delete函数的灵活运用
2 在叶子节点所有的group id, 删除的时候要注意,不...
分类:
其他好文 时间:
2014-08-05 11:13:09
阅读次数:
296
题目意思是中文的,相信大家都看得懂不解释。
普通的单点更新线段树,无坑无陷阱。
因为,做的线段树题不多,所以没有自己的代码风格。正在建立自己的风格中。
虽然,以前早就写了N遍这道题了,但是这次要把线段树的大部分题都过一遍,所以这题也写了一下,并且更改了以往的代码风格。
#include
#include
#include
#define lson l,m,rt << 1
#defi...
分类:
其他好文 时间:
2014-08-05 11:08:59
阅读次数:
192
题目链接题意:有N个人排队,给出各个人想插队的位置和标识,要求输出最后的序列。分析:因为之前的序列会因为插队而变化,如果直接算时间复杂度很高,所以可以用线段树逆序插入,把序列都插到最后一层,len记录该区间里还剩余多少位置,插入的时候就插到剩余的第几个位置,比如1,2已经插入了,如果再想插入第3个位...
分类:
其他好文 时间:
2014-08-05 11:05:09
阅读次数:
227
“在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决,实际上,仅凭线段树是不能搞定它的。我们需要用到一种貌似高级的复杂算法——树链剖分。树链,就是树上的路径。剖分,就是把路径分类为重链和轻链。记siz[v]表示以v为根的子树的节点数,dep[v]表示v的深度(根深度为1),top[...
分类:
其他好文 时间:
2014-08-05 10:55:09
阅读次数:
429