• 2024-09-25CF164D Minimum Diameter 题解
    最小点覆盖模板题。思路考虑二分直径\(x\)。我们将距离\(>x\)的点对连一条边,那么每一条边的两端至少有一端需要被删掉。这是最小点覆盖的定义。那么就是判断最小点覆盖是否小于等于\(k\)。发现这个问题并不好用一些多项式复杂度的做法解决。考虑暴搜。每一次我们把度
  • 2024-09-18D51 树的直径 [AGC001C] Shorten Diameter
    视频链接:D51树的直径[AGC001C]ShortenDiameter_哔哩哔哩_bilibili  [AGC001C]ShortenDiameter-洛谷|计算机科学教育新生态(luogu.com.cn)//树的直径+逆向思维#include<iostream>#include<cstring>#include<algorithm>usingnamespacestd;#defineN
  • 2024-09-09CF1192B/P6845 Dynamic Diameter
    题意给定一棵带权树和\(q\)次询问,每次询问修改一条树边的权值,并查询修改后树的直径。询问之间不独立。\(n,q\le10^5\),强制在线。分析回想一下,两个点的距离可以被表示成\(dep_x+dep_y-2dep_{lca(x,y)}\)。而树的直径,本质上就是求\(\max_{x,y}dep_x+dep_y-2dep_{lca(x,y)}
  • 2024-09-01二叉树的直径(LeetCode)
    题目给你一棵二叉树的根节点,返回该树的 直径 。二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。两节点之间路径的 长度 由它们之间边数表示。解题classTreeNode:def__init__(self,val=0,left=
  • 2024-09-01C#自定义控件—转换开关
    C#用户控件之转换开关如何自定义一个转换键(Toggle)?三步绘制一个精美控件:定义属性;画布重绘;添加事件;主要技能:如何自定义属性;画布重绘的一般格式;控件的事件触发过程;技能扩展转换按钮使能时添加二次确认弹框?在From窗体中应用控件时,点击事件没有触发?属性名称在
  • 2024-08-17C++-练习-20
    题目:WilliamWingate从事披萨饼分析服务。对于每个披萨饼,它都需要记录下列信息:披萨饼从事公司的名称,可以有多个单词组成披萨饼的直径披萨饼的重量。请设计一个能够存储这些信息的结构,并编写一个使用这种结构变量的程序。程序将请求用户输入上述信息,然后显示这些信息。请
  • 2024-06-30Leetcode 3203. Find Minimum Diameter After Merging Two Trees
    Leetcode3203.FindMinimumDiameterAfterMergingTwoTrees1.解题思路2.代码实现题目链接:3203.FindMinimumDiameterAfterMergingTwoTrees1.解题思路这一题的话算是一个拓扑树的题目?总之就是从树的叶子节点不断向上遍历,不断地删除已访问的叶子节点,并加入
  • 2024-06-08CF1192B Dynamic Diameter 题解
    思路静态\(\text{toptree}\)板子题。定义我们使用簇来表示树上的一个连通块。可以按照如下方式定义一个簇:一个簇可以表示为三元组\((u,v,E)\),其中\(u,v\)为树的节点,称为簇的界点,\(E\)为一个边的集合,表示该簇包含的边,路径\((u,v)\)称作簇路径。\(u,v\)分别为上界
  • 2024-05-25赛克oj The diameter of a rectangle(笛卡尔树)
    赛氪OJ-专注于算法竞赛的在线评测系统(saikr.com)这题是hduoj1506的加强版,区别在于宽度不是固定为1了,思路差不多,也是使用笛卡尔树。参考hduoj1506(笛卡尔树)-Venux-博客园(cnblogs.com)1#defineIOstd::ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)2#definebu
  • 2024-05-19CF1085D Minimum Diameter Tree 题解
    CF1085DMinimumDiameterTree题解比较水的一道绿题观察样例可以发现,边权都平分在叶子节点唯一的一条连边上,由此猜到联想到可以把贪心地将边权全部平均分配到这些边上,这样写出来就能AC了。如何证明先来一张图方便理解:利用反证法:假设按上述做法分配边权后可以至少修改一次
  • 2024-03-16Matlab制作shp文件
    fcloseallclearallclctree_num={'tree1','tree2','tree3','tree4'};tree_lat=[22.683822,22.683831,22.683843,22.683928];tree_lon=[108.856422,108.856401,108.856416,108.856362];species=['桉树','松树',�
  • 2024-02-16力扣递归之 543. 二叉树的直径
    classSolution{//二叉树直径其实就是根到左子树最深+根到右子树最深  intdiameter;    publicintdiameterOfBinaryTree(TreeNoderoot){    calculateDepth(root);    returndiameter;  }    privateintcalculateDe
  • 2024-01-31DIAMETER
    直径[zhíjìng]捷速,直接。汉司马相如《大人赋》:“西望崑崙之轧沕荒忽兮,直径驰乎三危。”连接圆周上两点并通过圆心的直线称圆直径,连接球面上两点并通过球心的直线称球直径。宋沈括《梦溪笔谈·技艺》:“以圆径除所得,加入直径,为割田之弧。”刘宾雁《一个人和
  • 2024-01-18AT_hitachi2020_f Preserve Diameter
    哦哦牛皮给定一棵树,你需要加入一些边,使得它成为一个简单无向图,要求:图的直径等于原树直径加入任何一条新边都会让图的直径变小。求方案数对\(998244353\)取模。\(1\len\le2\times10^5\)考虑找到新图的一对距离最远的点,将其它点按照到它们的距离标号并分层。由于第
  • 2024-01-15用MATLAB创建一个矩阵,包含颗粒的ID,type,直径,密度,坐标等信息,并填充一个矩形的空间
    LIGGGHTS可以read_data命令通过读取.txt文件中的颗粒信息。.txt的内容参考链接:liggghts通过.txt文件导入颗粒信息。下面的MATLAB代码可以根据需要生成一系列的颗粒信息,包括颗粒的ID,type,diameter,density,coordinate等。颗粒数量为8000,并且能够填充一个范围在(x_min,y_min,z_min)到(
  • 2023-12-23Python算法——树的直径
    Python中的树的直径算法详解树的直径是树中任意两个节点之间最长路径的长度。在本文中,我们将深入讨论树的直径问题以及如何通过深度优先搜索(DFS)算法来解决。我们将提供Python代码实现,并详细说明算法的原理和步骤。树的直径树的直径定义为树中任意两个节点之间最长路径的长度。这个
  • 2023-09-18543. 二叉树的直径
    给你一棵二叉树的根节点,返回该树的直径。二叉树的直径是指树中任意两个节点之间最长路径的长度。这条路径可能经过也可能不经过根节点root。两节点之间路径的长度由它们之间边数表示。输入:root=[1,2,3,4,5]输出:3解释:3,取路径[4,2,1,3]或[5,2,1,3]的长度。
  • 2023-09-01Maximum Diameter 题解
    MaximumDiameter题目大意定义长度为\(n\)的序列\(a\)的权值为:所有的\(n\)个点的第\(i\)个点的度数为\(a_i\)的树的直径最大值,如果不存在这样的树,其权值为\(0\)。给定\(n\),求所有长度为\(n\)的序列的权值和。思路分析\(n\)个点的树的边数为\(n-1\),总度数
  • 2023-06-29Codeforces 1458F - Range Diameter Sum
    先考虑直径的一些求法:最普遍的想法肯定是从点集中任意一个点开始DFS找到距其最远的点,再一遍DFS找到距离你找到的那个点最远的点。但是放在这个题肯定是不太行的。因此考虑一种更常用的求法:合并。更直观地说:我们定义树上一个圆\((x,r)\)表示距离\(x\)点\(\ler\)的所有点
  • 2023-06-069) Composite Pattern
    类别: StructualPattern问题: 方案:   示例: importjava.util.ArrayList;importjava.util.List;publicclassCompositePatternDemo{publicstaticvoidmain(String[]args){Bodysun=newBody("太阳","恒星",1392000000);
  • 2023-05-31tree_diameter
        publicstaticintheight(BinTreeT){if(T==null){return-1;}else{returnMath.max(height(T.left),height(T.right))+1;}}/**ReturnthediameterofT.*/publicstaticintdiameter(BinTreeT){if(T==null){return0;}else{in
  • 2023-05-10AtCoder Beginner Contest 221 F Diameter set
    洛谷传送门AtCoder传送门显然,选出的每两个点都要组成一条直径。还是显然,每条直径的重合部分只可能是一个点或一条边。简单证一下,没有重合显然不可能,重合超过一个点或一条边,直径会更长。进一步发现,设直径点数为\(x\),如果\(x\nmid2\),重合部分是一个点,否则重合部分是一条边
  • 2023-04-18LeetCode Top 100: 二叉树的直径 (python)
     给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。 示例:给定二叉树1/\23/\45返回 3,它的长度是路径[4,2,1,3]
  • 2023-01-18【DFS】LeetCode 543. 二叉树的直径
    题目链接543.二叉树的直径思路创建全局变量diameter以记录左子树高度加右子树高度,并在DFS过程中维护此变量。代码classSolution{intdiameter;publ
  • 2023-01-11CF 1581B Diameter of Graph 题解
    题面:给定n个顶点,m条边,任意两点并且最大距离小于k,两个顶点只能连一条边,询问是否能构造出这样的图型思路:1.n=1时进行特判,只有k>1时成立2.m=n(n-1)/2时,是完全图,只有k