摘要: 比较经典的segment tree的应用,线段树中信息的巧妙设计能够使得整个区间的解可以由合并子区间的解得到,本题很好的体现了这一点。#include #include const int MAXN = 50005;typedef struct { int sum; //[l..r]的所有元素和 int prefix; //[l..r]的最大前缀和 int suffix; //[l..r]的最大后缀和 int max; //[l..r]的最大子段和 int l; int r;}Node;Node seg[MAXN ... 阅读全文
posted @ 2013-06-24 23:29 Sinker 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 要合理地设计线段树节点中记录的信息从而能够方便有效地合并同时保持区间所维护的性质。分的时候是二分区间,查询的时候以二分点来分割查询区间,从而最终使整个查询区间得以被覆盖。再通过合并子区间的性质来得到查询区间的性质。 阅读全文
posted @ 2013-06-24 00:29 Sinker 阅读(137) 评论(0) 推荐(0) 编辑