树
ngncmh
这个作者很懒,什么都没留下…
展开
-
ZOJ Problem Set - 3664 Split the Rectangle
The 2012 ACM-ICPC Asia Changchun Regional Contest-J题目大一就是去掉某一些使得两个点在同一矩形内,然后问有还剩多少矩形。实际就是可以搞出一棵二叉树,生成的过程就是矩形分开的过程。然后答案显然就是 叶子节点个数---A和B的LCA为根的子树形的叶节点个数+1。#include #include #include #i原创 2012-10-16 16:41:45 · 868 阅读 · 0 评论 -
ZOJ Problem Set - 3659 Conquer a New Region
The 2012 ACM-ICPC Asia Changchun Regional Contest-E题目大意,给出一棵树,定义C(i,j)表示点i到点j路径上的最小边。然后希望确定一个点P,是的最大化sigma{C(p,i) 1假设拿出一条最小边,其长度为Len,一定可以把数分割成两个块L,和R,假设我们能解决相同的子问题及求的L和R中的最大值分别为L_value,R原创 2012-10-17 15:50:47 · 818 阅读 · 0 评论 -
sgu529. It's Time to Repair the Roads 简化版动态最小生成树
题目大意:给出n个点m条边,然后给出q个询问,表示把目前第numi条边的边权修改为di后的mst。一个分治算法两个重要的操作 Contraction 和 Reduction 操作。 详见论文《Offline Algorithms for Dynamic Minimum Spanning Tree Problems》#include #include #incl原创 2013-02-09 13:21:29 · 2535 阅读 · 0 评论 -
关于特殊二叉树的一些定义
数算教材上,对于满二叉树的定义是所有节点含有0个或2个子节点的二叉树称之为满二叉树。然后早在很久以前搞noip初赛的时候,依稀记得高度为h的满二叉树是有2^h - 1个节点的二叉树。即除了最后一层所有节点的度为0以外,其余节点的度均为2。 经过上网搜索才发现国内的一些定义,严格意义上名词的一一对应是否合理。 wikipedia 上对于一些二叉树的定义是这样的:原创 2013-10-09 15:52:14 · 1798 阅读 · 0 评论 -
基于双队列实现huffman树
今天数算课讲huffman树,是基于堆实现的,突然想起以前实现过基于双队列的huffman树,做个回顾。首先将n个元素从小到大排序,基于比较的排序都是nlogn的复杂度,这里可以考虑用计数排序(即桶排序)或者基数排序尝试优化到n试试。然后我们获得了一个有序队列我们把它放在A队列中,然后再找一个空的B队列。然后从A中或者B中找出两个最小的元素,累加放入B队列的队尾加入。不难发现B队列也是原创 2013-10-16 13:11:40 · 1262 阅读 · 0 评论