以前见过这题,没做出来,知道是离线处理,这次仔细想了下,首先把出现的高度都map离散化一下,以离散化出来的数目g建树,把每个位置都开俩个vector,一个存以这个位置为L的询问,一个存以这个位置为R的询问。然后从1-g
进行更新,假如当前i是以第j个区间的开始位置,那么这时就可以询问一下 2 #i....
分类:
其他好文 时间:
2014-06-04 19:21:52
阅读次数:
241
线段树。 1 #include 2 3 #define maxn 55555 4 5 int
sums[maxn>1;18 build(l, m, rt>1;30 if (des =r)40 return sums[rt];41 42 m =
(l+r)...
分类:
其他好文 时间:
2014-06-03 07:38:20
阅读次数:
219
线段树。 1 #include 2 #include 3 #include 4 using
namespace std; 5 6 #define mymax(a, b) (a>b) ? a:b 7 8 const int maxn =
200005; 9 10 int nums[maxn>...
分类:
其他好文 时间:
2014-05-31 15:22:14
阅读次数:
264
链接poj3667的加强版
当时的题解这里只不过对于女神需要另开算,DS的占用的时间不加在女神身上,女神的时间都要加,清空的时候也都要算。 1 #include 2 #include 3
#include 4 #include 5 #include 6 #include 7 #inc...
分类:
其他好文 时间:
2014-05-30 22:57:41
阅读次数:
475
议题:线段树(Interval
Tree)分析:线段树是一种二叉搜索树,将一个大区间划分成单元区间,每个单元区间对应一个叶子节点;内部节点对应部分区间,如对于一个内部节点[a,
b]而言,其左子节点表示的区间为[a, (a+b)/2],其右子节点表示的区间为[1+(a+b)/2, b];对于区间长度...
分类:
其他好文 时间:
2014-05-29 01:33:28
阅读次数:
419
最近要毕业了,有半年没做比赛了.这次参加百度之星的初赛娱乐一下.现在写一下解题报告.还是先看看四道题的类型吧1.Scenic
Popularity 暴力 复杂度O( 100 * 100 * 10000 ) 或者O( T * K * R) 线段树2.Chess DP
复杂度 O(n^2)3.Best ...
分类:
其他好文 时间:
2014-05-28 13:19:16
阅读次数:
261
Calculate the FunctionTime Limit:2000MSMemory
Limit:65536KB64bit IO Format:%lld & %lluSubmitStatusAppoint
description:DescriptionYou are given a list ...
分类:
其他好文 时间:
2014-05-27 18:03:16
阅读次数:
394
出题:要求将一个有序整数数组转换成最小深度的Binary Search
Tree表示;分析:由于需要是最小深度,所以BST应保持平衡,左右节点数大致相当,并且BST中当前根节点大于所有其左子树中的元素,小于所有其右子树中的元素。对于排序数组而言,中间元素必然作为根节点,然后递归对由中间元素分割的左右...
分类:
其他好文 时间:
2014-05-26 03:49:39
阅读次数:
369
这道题可以用线段树或者树状数组,我在网上看有些大神竟然没用线段树和树状数组就把这道题搞出来了。。汗。。。线段树:线段树不能更新到叶子,否则超时。代码:
1 #include 2 #include 3 #include 4 #include 5 #define N 100005 6 using...
分类:
其他好文 时间:
2014-05-25 23:17:40
阅读次数:
287
题目链接:点击打开链接
题意:有两种操作,合并集合,查询第K大集合的元素个数。(总操作次数为2*10^5)
Treap模板(静态数组)
#include
#include
#include
#include
#include
const int maxNode = 500000 + 100;
const int inf = 0x3f3f3f3f;
struct Tr...
分类:
其他好文 时间:
2014-05-24 23:18:09
阅读次数:
522