题意: 给定一个敌人的通信系统,是一棵树形,每个节点是一个敌人士兵,根节点是commander,叶子是前线,我们的目的是使得敌人的前线无法将消息传到commander,需要切断一些边,切断每条边需要一定的power,而我们有一台具有m点power的机器,问在使用此机器切断敌人通信系统的情况下,...
分类:
其他好文 时间:
2015-09-25 00:08:16
阅读次数:
313
dfs一遍,维护当前连续遇到的喵的数量,然后剪枝,每个统计孩子数量判断是不是叶子结点。#includeusing namespace std;const int maxn = 2e5+5;int a[maxn];int head[maxn],nxt[maxnm) return; int ch ...
分类:
其他好文 时间:
2015-09-23 10:22:28
阅读次数:
176
原题链接:题意:给你一棵有根树,某些节点的权值是1,其他的是0,问你从根到叶子节点的权值和不超过m的路径有多少条。题解:直接dfs一下就好了。代码:#include#include#include#include#define MAX_N 100005using namespace std;vect...
分类:
其他好文 时间:
2015-09-23 06:46:00
阅读次数:
241
生成树的上的一个非根结点对应一条生成树上的边,然后这个结点的子树上连出去的边就对应去掉这条边的割,然后就可以对树外的边求LCA,在LCA上标记,利用这个信息可以算出有多少条边在子树上,以及有多少条边不再子树上。其实更进一步,非叶子结点一定不会比叶子结点更优,连的边只不会减少。所以只要统一叶子结点上的...
分类:
其他好文 时间:
2015-09-22 22:01:02
阅读次数:
174
题意: 给一棵n个节点的树,点1为敌方基地,叶子结点都为我方阵地。我们可以在每个结点安放炸弹,每点至多放一个,每个结点有ki种炸弹可选,且每种炸弹有一个花费和一个攻击力(1点攻击力使敌人掉1点hp)。敌人的目的是我方阵地,任意路线都有可能,但规定只能往下跑。问当有m钱时,最坏情况下最多能打掉敌人多....
分类:
其他好文 时间:
2015-09-21 17:11:10
阅读次数:
211
最近一直在复习面试的内容,会不断的记录相关自己看过或者写过的内容,这也是自己的收获或经历,以后查询也比较方便。红黑树的性质不说了,直接贴代码上传。 1 /* 2 * rbtree.h 3 * 1. 每个节点是红色或者黑色 4 * 2. 根节点是黑色 5 * 3. 每个叶子节点是黑色...
分类:
编程语言 时间:
2015-09-19 15:06:46
阅读次数:
284
问题描述输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。算法分析
如果 root 等于 输入数,将root放在返回数组里返回;如果root大于输入数,返回空值;
如果root小于输入数,将root放在数组里,输入数自减root,一同随root的子树递归;
如果输入数为0了且左右子树都为空,即为叶子节点,则这...
分类:
其他好文 时间:
2015-09-19 06:16:08
阅读次数:
133
题意:给定一棵树,n个节点,其中有m个叶子表示的是用户,其他点表示中转器, 每条边都有权值,每个用户i愿意给的钱w[i],问如果在不亏钱的情况下能为多少用户转播足球比赛?思路: 其实就是要选出部分叶子节点,其花费=所选叶子权值 - 经过的所有边权(每条边只算1次花费)。 那么对于每个节点,可以考.....
分类:
其他好文 时间:
2015-09-17 21:12:40
阅读次数:
185
Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one tes...
分类:
编程语言 时间:
2015-09-16 17:52:54
阅读次数:
306
线段树区间求和树节点不能只存和,只存和,会导致每次加数的时候都要更新到叶子节点,速度太慢(O(nlogn))。所以我们要存两个量,一个是原来的和nSum,一个是累加的增量Inc。在增加时,如果要加的区间正好覆盖一个节点,则增加其节点的Inc值,不再往下走,否则要更新nSum(加上本次增量),再将增量...
分类:
其他好文 时间:
2015-09-15 21:43:54
阅读次数:
184