随笔分类 -  二叉树

poj 2201 Cartesian Tree
摘要:http://poj.org/problem?id=2201基础笛卡尔树#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;const int N=50005;struct node{ int key; int value; int l,r,f; int I;}mem[N];int bhead,ri;bool cmp(node a,node b){ return a.key<b.key;}int f[N];int 阅读全文
posted @ 2012-07-24 16:21 夜-> 阅读(233) 评论(0) 推荐(0) 编辑
poj 2892 Tunnel Warfare
摘要:http://poj.org/problem?id=2892此代码在POJ上能过 在hdu上过不了题目大意:n个村庄相连 三种操作D 摧毁一个村庄Q 查询包括此村庄在内和此村庄直接和间接相连的村庄数R 修复上一个被摧毁的村庄Ttree 写的很烂呀思路:将摧毁的村庄插入二叉树中每次询问 就查找它左边和右边最近被摧毁的村庄 就可以知道答案了修复一个村庄 就把它在树中删除代码及其注释:#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cmath& 阅读全文
posted @ 2012-07-15 15:35 夜-> 阅读(206) 评论(0) 推荐(0) 编辑
poj 2352 Stars
摘要:http://poj.org/problem?id=2352题目大意:给出N个点 点的顺序是按y非递减给出的level是这个点左下方点的个数求各个level的数量思路:由于给的点有顺序 所以就简单了一般用树状数组或线段树就可以我用了平衡树 是为了练习啦 写的相当烂用平衡树 不断地插入更新就可以了#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cmath>#include<queue>#include<algorit 阅读全文
posted @ 2012-07-14 18:25 夜-> 阅读(224) 评论(0) 推荐(1) 编辑
poj 2482 Stars in Your Window
摘要:http://poj.org/problem?id=2482黑书的102~104有个十分类似的题,解法一样 推荐题目大意:刚开始的情书 ,十分的不错。给你个矩形去框星星 矩形能移不能转,边框上的星星不算,星星都是有亮度值的问可以得到的最大亮度值和思路:由于都是整数,比如说边框左边有星星 右边也有星星 只有左右移动一下就可以多框一些星星,所以我们默认 边框星星 取左不取右,取下不取上我们对y坐标排序,根据y建二叉树 左子树一定小于根节点 右子树一定大于根节点对x排序,我们用两个扫描线,使它们两者之间的星星x距离不超过w然后对其求最大矩形内亮度和。我们可以把一个点拆成两个 原来的点是x ,y,va 阅读全文
posted @ 2012-07-13 14:58 夜-> 阅读(179) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示