![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树
文章平均质量分 56
zafu_acm
这个作者很懒,什么都没留下…
展开
-
HDU 2665 划分树
划分树。。求某区间第K小的数。。模板 (hdu上原文是the k-th big number。。不知道是搞错了还是我英语不好) #include #include #include #include using namespace std; const int MAXN=100; int tree[30][MAXN];//表示每层每个位置的值 int sorted[MAXN];//已经排原创 2013-05-26 16:48:23 · 511 阅读 · 0 评论 -
HDU 1053 哈弗曼编码
典型的哈弗曼编码。借助优先队列,当输入只有一种符号的时候需要另作讨论 #include #include #include using namespace std; struct node{ friend bool operator<(const node a,const node b) { return a.w>b.w; } int w; }; int main() {原创 2013-06-13 18:42:58 · 577 阅读 · 0 评论 -
HDU 1698 just a hook 线段树
区间修改的线段树 #include #include #include int n; struct { int l,r,v; }node[400005]; int setv[400005]; int sum; void build(int o,int l,int r) { node[o].v=1; node[o].l=l; node[o].r=r;原创 2013-07-17 09:43:55 · 487 阅读 · 0 评论 -
hdu-1823 二维线段树
#include #include #include using namespace std; const int MAXN = 3000; struct sub_node{int la, ra, _maxl;}; struct node{int lh, rh;sub_node sub_t[MAXN];}t[MAXN]; void build_sub(int id, int原创 2013-07-17 15:00:04 · 459 阅读 · 0 评论 -
POJ 3468 区间增加线段树
http://poj.org/problem?id=3468 #include #include #define maxn 100005 #define lc 2*o,l,m #define rc 2*o+1,m+1,r long long data[maxn]; long long sum[maxn*4]; long long lazy[maxn*4]; void pushup(原创 2013-07-19 13:57:40 · 506 阅读 · 0 评论 -
HDU 2196
题意 :给定一张图,问图中的每个节点可到达叶子节点的最远距离 分析可知,对于一个节点的最远距离来说,把该点作为树的根节点来考虑,那么最远距离要么是从该节点往下走,要么是从该节点往上走,再往下走。 对于后一种情况来说,还要保证往下走的时候不会再一次经过该节点,所以要记录一个次远距离,当这种情况发生的时候,就用这个次远距离来计算。 因为 N = 10000,那么就考虑用dp来做。 do原创 2014-01-16 09:01:35 · 487 阅读 · 0 评论