首页 > 其他分享 >Tree Cutting

Tree Cutting

时间:2024-03-23 13:13:11浏览次数:39  
标签:Tree 叶子 剩下 Cutting 节点 切掉

这道题目的代码的写法非常新,可以学习

首先我们从\(x=1\)开始想起,此时显然一条边都不用切

然后是\(x=2\),我们发现所有叶子节点都不能分离开来了,我们把所有叶子节点与其父亲节点弄成一个连通块,显然这里切掉是最优的,在考虑剩下的树,仍然对叶子节点实施这个操作,直到最后没有剩下的树为止

于是我们可以得出来一种算法,当\(x\)固定的时候,我们从叶子节点开始往上搜索,如果某一时刻某个连通块的大小大于等于\(x\)就要切掉,然后再对剩下的树进行类似的操作

以上算法显然可以二分;但是具体实现非常的巧妙,可以看CF提交的代码

标签:Tree,叶子,剩下,Cutting,节点,切掉
From: https://www.cnblogs.com/dingxingdi/p/18090996

相关文章

  • CF1923E 一个无需 DSU On Tree 的解法(?
    在地铁上口胡了一下。不知道对不对。考虑记录每一个点\(i\)离他最远的一个祖先使得祖先到\(i\)的路径上没有\(a_i\)。设他为\(\text{lst}_i\)。然后如果两个\(u,v\)的\(\text{lst}\)相等,那么这条路径就是好的。每种颜色枚举即可。八成假了(?),欢迎Hack。PS:全对了,确实能......
  • tree --help 最新版 v2.1.1
    tree--helpusage:tree[-acdfghilnpqrstuvxACDFJQNSUX][-Llevel[-R]][-H baseHREF]    [-Ttitle][-ofilename][-Ppattern][-Ipattern][--gitignore]    [--gitfile[=]file][--matchdirs][--metafirst][--ignore-case]    [--nolinks]......
  • Kinetic Tournament Tree
    考虑这样一个问题:\(n\)个一次函数\(k_ix_i+b_i\),每个一次函数初始有\(x_i=0\);区间对\(x_i\)加正数\(x\),区间查询\(\max\limits_{i=l}^rk_ix_i+b_i\)。考虑每个点维护当\(x_i=0\)时值最大的函数,然后额外维护一个阈值\(t\),表示当\(x\)增大到\(t\)时这个......
  • C. Anji's Binary Tree
    网站:https://codeforces.com/problemset/problem/1900/C这里比较容易搞混的就是各个节点的关系,不要用2*n来表示左孩子!!以及记得添加快读快写ios::sync_with_stdio(false);cin.tie(nullptr);加在intmain()里即可这里还有一个priority_queue的小技巧:结构体内部定义运算符,好像和......
  • npm 错误,ERESOLVE unable to resolve dependency tree 解决方案
    参考:https://blog.csdn.net/qq_42055933/article/details/132098617 背景:当在使用npminstall时遇到“ERESOLVEunabletoresolvedependencytree”错误时,这通常是由于项目的依赖关系发生了冲突或不兼容问题。 方案一:在命令中增加 --legacy-peer-dep 选项或者--force......
  • vue2/3 - element组件库el-tree树形控件实现一键全选/一键反选取消/全部收起/全部折叠
    效果图在vue2、vue3|element饿了么组件库中,详细使用el-tree树状组件完成功能按钮组,支持全部选中节点、反选取消节点、对所有树节点进行折叠收起、是否上下级联动等等!提供详细示例代码教程,一键复制开箱即用~~示例代码请看下方代码及技术点介绍。<template><div......
  • Tree Compass Codeforces Round 934 (Div. 2) 1944E
    Problem-E-Codeforces题目大意:有一棵n个点的树,初始状态下所有点都是白色的,每次操作可以选择一个点u和一个距离dis,使得距离点u所有长度为dis的点变为黑色,问最少需要多少次操作能使所有点变成黑色,输出所有操作1<=n<=2000思路:要想操作数最少,就要使每次操作涂黑的点的数量尽......
  • LeetCode 2265. Count Nodes Equal to Average of Subtree
    原题链接在这里:https://leetcode.com/problems/count-nodes-equal-to-average-of-subtree/description/题目:Giventhe root ofabinarytree,return thenumberofnodeswherethevalueofthenodeisequaltothe average ofthevaluesinits subtree.Note:Th......
  • 集合系列(五) -TreeMap详解
    一、摘要在集合系列的第一章,咱们了解到,Map的实现类有HashMap、LinkedHashMap、TreeMap、IdentityHashMap、WeakHashMap、Hashtable、Properties等等。本文主要从数据结构和算法层面,探讨TreeMap的实现。二、简介JavaTreeMap实现了SortedMap接口,也就是说会按照key的大......
  • LeetCode 1161. Maximum Level Sum of a Binary Tree
    原题链接在这里:https://leetcode.com/problems/maximum-level-sum-of-a-binary-tree/description/题目:Giventhe root ofabinarytree,thelevelofitsrootis 1,thelevelofitschildrenis 2,andsoon.Returnthe smallest level x suchthatthesumofa......