线段树
u013497151
这个作者很懒,什么都没留下…
展开
-
线段树模板(NOTONLYSUCCESS神牛)
来自NOTONLYSUCCESS博客,汇总了一下 写法十分飘逸,简洁。膜拜。。 单点替换、单点增减、区间求和、区间最值 #include #include using namespace std; #define lson l , m , rt << 1 #define rson m + 1 , r , rt << 1 | 1 const int maxn = 222222; i原创 2014-08-11 21:07:09 · 3198 阅读 · 1 评论 -
线段树模板(结构体)
线段树研究了两天了,总算有了点眉目,今天也把落下的题,补了一下。 贴一份线段树模板 线段树的特点: 1. 每一层都是区间[a, b]的一个划分,记 L = b - a 2. 一共有log2L层 3. 给定一个点p,从根到叶子p上的所有区间都包含点p,且其他区间都不包含点p。 4. 给定一个区间[l; r],可以把它分解为不超过2log2 L条不相交线段的并。 总结来说:原创 2014-08-11 20:50:07 · 2488 阅读 · 0 评论 -
POJ 2352 Stars (线段树&&树状数组)
Stars Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 32475 Accepted: 14186 Description Astronomers often examine star maps where stars are represented by原创 2014-08-14 15:50:44 · 859 阅读 · 0 评论 -
HDU 2852 KiKi's K-Number(线段树+树状数组)
KiKi's K-Number Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2603 Accepted Submission(s): 1202 Problem Description For the k-原创 2014-08-14 15:45:24 · 1144 阅读 · 0 评论 -
线段树求逆序数方法 HDU1394&&POJ2299
为什么线段树可以求逆序数? 给一个简单的序列 9 5 8 他的逆序数是3 首先要求一个逆序数有两种方式:可以从头开始往后找比当前元素小的值,也可以从后往前找比当前元素大的值,有几个逆序数就是几。 线段树就是应用从后往前找较大值得个数。(一边更新一边查) 当前个数是 n = 10 元素 9 5 8 9先加入线段树,T【9】+=1;查从T【9】到T【10】比9大的值,原创 2014-08-13 19:00:29 · 1117 阅读 · 0 评论 -
POJ 2528 Mayor's posters(线段树+离散化)
题目链接:Mayor's posters 题意:按顺序往墙上贴海报,可以重叠,问最后可以看到多少海报。(被覆盖的海报是看不到的) 注意: 因为数据比较大,所以不离散化,肯定爆内存。 还有就是,不能只是单纯的离散化,还要处理好点的边界 举个例子 4 2 10. 2 8 3 6 6 8 8 10 离散化后 2 3 6 8 10 1 2 3 4 5 覆盖掉了原创 2014-08-12 17:28:25 · 1021 阅读 · 0 评论 -
HDU 1698 Just a Hook
区间替换,区间求和 #include #include #include #include #include #define max(a,b) (a>b)?a:b #define min(a,b) (a>b)?b:a #define lson l , m , rt << 1 #define rson m + 1 , r , rt << 1 | 1 #define LL __int64原创 2014-08-12 08:20:14 · 736 阅读 · 0 评论 -
POJ 3468 A Simple Problem with Integers (区间增减)
线段树的区间增减,水题,帮助练手原创 2014-08-12 08:18:41 · 744 阅读 · 0 评论 -
HDU 1166 敌兵布阵
线段树的基础题目,涵盖 线段树的单点查询、单点原创 2014-08-12 08:12:38 · 822 阅读 · 0 评论 -
HDU 1754 I Hate It
线段树的单点替换、区间 #include #include #include #include #include #include using namespace std; #define N 200004 #define MAX INT_MAX #define MIN INT_MIN struct node { int left,right; int num; // }原创 2014-08-12 08:15:09 · 718 阅读 · 0 评论 -
POJ 3264 Balanced Lineup( 线段树&&RMQ )
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 34331 Accepted: 16145 Case Time Limit: 2000MS Description For the daily milking, Farme原创 2014-08-14 19:38:53 · 891 阅读 · 0 评论