线段树
eIectron
优美的代码是成功AC的第一步。看着那么多博客不再更新,这就是我几年后的状态吗?要是走了就再也不回来了。
展开
-
线段树模版—A Simple Problem with Integers
D - A Simple Problem with Integers Time Limit:5000MS Memory Limit:131072KB 64bit IO Format:%I64d & %I64u Description 给出了一个序列,你需要处理如下两种询问。 "C a b c"表示给[a, b]区间中的值全部增加c (-10000 ≤ c原创 2016-04-29 00:03:30 · 1602 阅读 · 0 评论 -
树状数组扩展 2016杭电多校赛contest4第十二题 Bubble Sort
Bubble Sort Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 741 Accepted Submission(s): 441 Problem Description P is a permutation o原创 2016-07-31 11:07:47 · 691 阅读 · 0 评论 -
C - Just a Hook(写的第一道线段树区间更新的题目,卡了半天)
C - Just a Hook Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Description In the game of DotA, Pudge’s meat hook is actually the most horrible thing for mos原创 2016-04-28 20:31:38 · 445 阅读 · 0 评论 -
CodeFroces 827A.String Reconstruction
http://codeforces.com/problemset/problem/827/A 这道题比赛的时候用线段树没做出来。 题意很简单,就是给出n个字符串,每个字符串分别在一些位置,而且所给的字符串并不会有冲突。要求构造出合理的字符串。 因为是区间更新,很容易想到是线段树。只需要单点更新,每个位置记录一下所在的字符串,并且传参的时候把起点也传下去。这样就可以知道是字符串的第几个字符了。原创 2017-07-13 19:40:00 · 2902 阅读 · 0 评论 -
Codefroces 438D. The Child and Sequence(线段树)
题目链接:http://codeforces.com/contest/438/problem/D 昨晚,吉如一老师做客51Nod给我们讲解了线段树lazy标记的应用,其中,这是最简单的那道题(???)。 这道题目,如果是想完全暴力修改一个区间取模的话,显然是不行的,复杂度太高。这时候,jls教我们用lazy标记去做这道题。 首先,我们有一个结论,有一个数字x,对p取模,如果x = p,那么,原创 2017-03-27 19:57:54 · 336 阅读 · 0 评论 -
HDU 6203ping ping ping(LCA+贪心)
题意:给出一棵树,然后给出一些点对,要求这些点对无法连通(可以毁坏u到v路上的点,也可以毁坏u,也可以毁坏v)。问最少毁坏多少个点。 解法:很容易想到,如果毁坏u和v的最近公共祖先,那么这条路是断的,而且u的子树上的点到v的子树上的点也会无法连通。但是单凭LCA是不够的,因为深度越大的应该优先解决,深度小的点无法影响深度大的点。所以我们要贪心一下,每次取出点对的LCA深度小的点对。如果这个点对u原创 2017-09-30 11:28:07 · 302 阅读 · 0 评论