讲课 线段树
Harrys_Snitch
没有简述。
展开
-
CF 527C Glass Carving 思路
用 0 1 序列表示每个点是否被切割,然后 最长的长就是长的最长连续0的数量+1 最长的宽就是宽的最长连续0的数量+1 于是用线段树维护最长连续0序列原创 2017-03-17 11:54:10 · 671 阅读 · 0 评论 -
HDU 1698 Just a Hook
原题戳Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)题意:一段线段由n条小线段组成,每次操作把一个区间的小线段变成金银铜之一(金的价值为3,银为2,铜为1),最初可当做全为铜;最后求这条线段的总价值。思路: 其实就是线段树的成段更新,用到了lazy tag… 懒惰标记:原创 2017-03-15 20:20:26 · 593 阅读 · 0 评论 -
POJ 3667 Hotel
原题戳Time Limit: 3000MS Memory Limit: 65536KDescription The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a vacation on the sunny shores of Lake Superior原创 2017-03-17 10:14:16 · 478 阅读 · 1 评论 -
POJ 1741 Tree
原题戳 还没写····· 你们先戳着玩吧(滑稽原创 2017-03-27 17:10:14 · 290 阅读 · 0 评论 -
讲课:OI中实用的结构——线段树
这里基本操作模板 不讲下面是几个与线段树有关的技巧||思路,就用例题来讲懒惰标记区间合并拓宽思维用1拓宽思维用2蛤蛤 是不是感觉妈妈再也不用担心我的线段树啦~ 不客气!原创 2017-03-17 12:04:08 · 416 阅读 · 0 评论 -
CF 527C Glass Carving
正在施工!!!原题戳time limit per test:2 seconds memory limit per test:256 megabytesDescription Leonid wants to become a glass carver (the person who creates beautiful artworks by cutting the glass). He alre原创 2017-03-17 11:42:46 · 717 阅读 · 0 评论 -
URAL 1989 Subpalindromes
原题戳Time limit: 0.5 second Memory limit: 64 MBDescription You have a string and queries of two types: replace i’th character of the string by character a; check if substring sj…sk is a palindro原创 2017-03-17 20:28:36 · 483 阅读 · 0 评论 -
URAL 1989 Subpalindromes 思路
对于一个字符串a[0],a[1],…,a[n-1] 它对应的哈希函数为a[0]+a[1]*K + a[2]*K^2 +…+a[n-1]*K^(n-1) 再维护一个从右往左的哈希值:a[0]*K^(n-1) + a[1]*K^(n-2) +…+a[n-1] 若是回文串,则左右的哈希值会相等。而左右哈希值相等,则hin大hin大可能这是回文串。 若出现误判,可以再用一个K2,进行二次哈希判断,可以原创 2017-03-17 20:29:43 · 620 阅读 · 0 评论 -
有关线段树的基本操作模板
定义 基本操作构建线段树区间查询更新某个叶子节点的值定义 只是怕你们忘了 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。 对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2+1,b]。因此线段树是平衡二叉树,最后的子节点数目为N,即整个线段区间的长原创 2017-03-01 20:47:42 · 477 阅读 · 0 评论