- 博客(3)
- 收藏
- 关注
原创 树染色
树的染色 题意 每条边的两个端点进行染色,要求每条边两端颜色不一样,求至少需要几种颜色 分析 如果只有一个点,当然只要一种颜色就行。 如果是棵树,没有环,答案是2。 如果有环,且有节点数为奇数的环,答案是3,否则是2。 题解 说明:开始我是想先剪枝,将不成环的分支剪掉,然后遍历寻找环的个数,判断奇偶,但是太繁琐,索性我直接进行遍历染色,看能否被两种颜色染色,能则为2,不能则为3. 定义:vecto...
2018-10-29 18:03:43
1079
原创 动规
塔形最大和 问题: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 这是一个塔形数组,现在计算从塔顶向下加,但只能加下面和下有的数,直到最底层,求最大的和是多少。 input 5 //表示有几层 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 output 30 个人解析 一般刚上手会直接从第一层加取,但是由于不知道后面层数的数字,会造成只有当前一步加取最大,不可取,暴力求...
2018-10-23 01:03:37
177
原创 树重心
一遍dfs 树的重心的性质就不用再说了,本题主要使用重心的概念进行解题即在所有节点为根的较大size(节点数)的子树当中找到节点数最小的节点。 本题最重要的是 理解如何实现一遍dfs递归找到最佳节点 算法的关键是使用递归操作所有的节点的子节点具体实现如下 使用vector<int>leaf[]来构建树存储节点及其相连的节点。 now表示当前的节点 son表示now的子节点 parent...
2018-10-23 01:03:07
469
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人