Description

  • 传送门

Solution

  • 做法:直接黑白染色,取颜色少的点数减一即为答案。
  • 考虑当我们确定根之后,每一次选择的移动节点aaa如果往它的儿子连或它的兄弟连是不优的。因此我们每一次都是尽量往上面跳两个节点。
  • 再考虑简单的一条链的时候,深度为奇数的点必须要往上面跳一次,深度为偶数的点跟着深度为奇数的点往上跳,从下往上做。如果操作一个深度为偶数的节点,会使得深度为偶数的节点增多,而最后到了根节点下面的时候深度为偶数的节点是要一个一个操作的,所以不优。可以证明的是即使中间选择了奇数节点,不如一开始就选择奇数节点好。
  • 因此直接选择根节点,深度为奇数的点全部操作一次,就刚好能够到达下界了。
**#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#define maxn 200005
using namespace std;int n,i,j,k,ans,sum;
int em,e[maxn*2],nx[maxn*2],ls[maxn];void insert(int x,int y){em++; e[em]=y; nx[em]=ls[x]; ls[x]=em;em++; e[em]=x; nx[em]=ls[y]; ls[y]=em;
}void dfs(int x,int p,int d){sum+=d&1^1;for(int i=ls[x];i;i=nx[i]) if (e[i]!=p)dfs(e[i],x,d+1);
}int main(){freopen("ceshi.in","r",stdin);scanf("%d",&n);for(i=1;i<n;i++) scanf("%d%d",&j,&k),insert(j,k);dfs(1,0,0);ans=min(sum,n-sum)-1;printf("%d\n",ans);
}

CF1375G Tree Modification相关推荐

  1. CF1375G. Tree Modification(贪心,黑白染色)

    CF1375G. Tree Modification Solution 假设我们取定了根,那么只可能从深度大的点接到深度小的点,我们每次取一个高度为2的子树接到该子树的父亲,这样取一定不劣,操作次数相 ...

  2. codeforces1375G Tree Modification

    https://codeforces.com/problemset/problem/1375/G 感觉这题是D题难度啊.... 观察给出的图发现,对于(很多d)-a-b-c,一次操作相当于把这些d和a ...

  3. 2020.9月做题记录

    八月的做题记录因为是暑假所以鸽掉了. 离联赛真的不远了,要继续努力啊qwq- week -1 2020.08.30 2020.08.30 今天考试,修了20+次锅,修的我都没有心情做题了- 然后开始消 ...

  4. 【CodeForces】Codeforces Global Round 9

    比赛链接 点击打开链接 官方题解 点击打开链接 Problem A. Sign Flipping 将奇数位的数取非正值,偶数位的数取非负值即可. 单组数据时间复杂度 O ( N ) O(N) O(N) ...

  5. mysql源码分析——索引的数据结构

    引子 说几句题外话,在京被困三个月之久,不能回家,所以这个源码分析就中断了.之所以在家搞这个数据库的源码分析,主要是在家环境齐全,公司的电脑老旧不堪.意外事件往往打断正常的习惯和运行轨迹,但这却是正常 ...

  6. 在windows上的git bash中安装tree 和 linux tree命令使用

    在windows上的git bash中安装tree 和 linux tree命令使用 文章目录: 1 在windows上的git bash中安装tree 1.1 下载windows版本的tree 1. ...

  7. 的tree用法_linux命令tree用法

    CentOS7.3学习笔记总结(四十九)-linux命令tree用法 tree命令用于以树状图形方式列出目录结构(指定目录下的所有文件.所有目录). 该命令默认未安装,安装命令:yum -y inst ...

  8. Qt 可编辑的树模型(Tree Model)的一个实例

    本实例来自Qt 官方的一个实例(Editable Tree Model Example) 简介: 本实例是关于怎样基于模式视图框架下的 树模型的实现. 该模型支持可编辑的表单项,自定义表头,删除插入行 ...

  9. Theory Defect in selecting best pruned tree from CCP with Cross-validation

    The problem is: Selecting best pruned tree from CCP with Cross-validation -------------------------- ...

最新文章

  1. 冷却负载、人为因素影响传统数据中心效率
  2. 【Python】一个已经存在 10 年,却被严重低估的库
  3. html 按下和松开事件,利用JQuery实现一个键盘按下与松开触发事件
  4. phalcon: 缓存片段,文件缓存,memcache缓存
  5. gsonformat插件_吐血推荐珍藏的IDEA插件
  6. Ubuntu IP设置为静态
  7. python语音分割_Python 牺牲性能以提升程序员的工作效率
  8. 市场上常见电阻阻值表
  9. AD15批量修改丝印的方法
  10. 尚学堂第十一章多线程习题答案
  11. 计算机键盘按键错乱,笔记本键盘按键错乱怎么办 解决笔记本电脑个别按键功能错乱...
  12. 共赴开源路,共筑新丰碑!2022云栖大会龙蜥操作系统峰会圆满落幕!
  13. PBRT学习笔记:在单位圆内部均匀采样
  14. 手Q游戏中心的个性化推荐实战 | CSDN博文精选
  15. Unity3D手游项目的总结和思考(6) - Xlua的使用心得
  16. abb机器人编程手册_002.ABB机器人高级编程--String飞升篇
  17. Ubuntu常见命令
  18. Python的第三次作业——陈灵院
  19. 数加加众包:奔驰“哭诉维权”美女硕士,你“不要脸”的样子真的很美
  20. MDF智能合约靠谱吗?

热门文章

  1. 主要的数据交换格式XML与JASON
  2. 科学计算与数学建模-线性方程组求解的迭代法 思维导图
  3. 蓝桥杯水题 单词分析【第十一届】【省赛】【C组】C/C++
  4. 水星mac1300r虚拟服务器,水星(MERCURY)MAC1300R路由器用手机怎么设置?
  5. windows打印机服务开启方法
  6. (Tiled官方文档翻译)第一节:简介及创建工程、图层集
  7. html怎么随机设置颜色,设置随机颜色值
  8. 限制 input text 只能输入数字
  9. ArcGIS模型构建器批量将多个图层根据字段分割
  10. 今日参与会议后的感悟