草庐IT

Tree-Shaking

全部标签

Codeforces1695 D1.+D2 Tree Queries

题意给一个n个点的无向图,其中有一个隐藏点X,可以进行一组询问S来确定S是n个节点中的哪个点。S包括k个询问节点。询问返回的值也为k个值,每个值为X点到每个询问节点的最短路距离,求k最小为多少。提示1.对于k个节点来说,最优的结构肯定是选择所有的叶子节点2.对于一个节点来说,假如它连了m条链(包括单个叶子节点),可以只标记m-1条链的叶子节点即可3.满足1,2条件以后,可以尝试再去询问点,发现均无法全部检测到,原因是:假如去点m-2条链,剩下的两条链,相同深度部分对于其他的节点来说是无法判断的,他们是等价的方法可以树形DP,一下,或者从每个叶子节点开始搜索一下,这里主要将树形DP的方法:dp[

Codeforces1695 D1.+D2 Tree Queries

题意给一个n个点的无向图,其中有一个隐藏点X,可以进行一组询问S来确定S是n个节点中的哪个点。S包括k个询问节点。询问返回的值也为k个值,每个值为X点到每个询问节点的最短路距离,求k最小为多少。提示1.对于k个节点来说,最优的结构肯定是选择所有的叶子节点2.对于一个节点来说,假如它连了m条链(包括单个叶子节点),可以只标记m-1条链的叶子节点即可3.满足1,2条件以后,可以尝试再去询问点,发现均无法全部检测到,原因是:假如去点m-2条链,剩下的两条链,相同深度部分对于其他的节点来说是无法判断的,他们是等价的方法可以树形DP,一下,或者从每个叶子节点开始搜索一下,这里主要将树形DP的方法:dp[

Codeforces 1682 D Circular Spanning Tree

题意1-n排列,构成一个圆;1-n每个点有个值0或者1,0代表点的度为偶数,1代表点的度为计数;询问能否构成一棵树,树的连边在圆内不会相交,在圆边上可以相交,可以则输出方案。提示1.首先考虑什么时候无解,显然,奇数点个数是偶数,并且>=22.由奇数点个数为偶数可以发现,它们可以连到同一个偶数点上(并非直接连)3.剩下的偶数点可以直接顺时针串联,直到连到最近的一个奇数点上4.相当于每个奇数点后面有一条偶数链,或者没有偶数链只有一个奇点(这都是一样的,因为链最后一个点都只剩下一个需要连的点),直接把链的最后一个点连在一起就好了代码#includeusingnamespacestd;chars[20

Codeforces 1682 D Circular Spanning Tree

题意1-n排列,构成一个圆;1-n每个点有个值0或者1,0代表点的度为偶数,1代表点的度为计数;询问能否构成一棵树,树的连边在圆内不会相交,在圆边上可以相交,可以则输出方案。提示1.首先考虑什么时候无解,显然,奇数点个数是偶数,并且>=22.由奇数点个数为偶数可以发现,它们可以连到同一个偶数点上(并非直接连)3.剩下的偶数点可以直接顺时针串联,直到连到最近的一个奇数点上4.相当于每个奇数点后面有一条偶数链,或者没有偶数链只有一个奇点(这都是一样的,因为链最后一个点都只剩下一个需要连的点),直接把链的最后一个点连在一起就好了代码#includeusingnamespacestd;chars[20

第二章、框架设计的核心要素

  1.提升用户的开发体验      开发体验是衡量一个框架的指标之一      关于快速定位问题和打印警告信息和其他重要信息 Vue.js3  源码中使用 initCustomFormatter函数       该函数作用:在开发环境下自定义formatter的      Chrome为例,打开 DevTools勾选 Console --> Enable custom formatters        2.控制框架代码体积    框架的大小也是衡量框架的标准之一    1. 关于警告       Vue.js3中每一个warn都配合 __DEV__常量的检查      Vue.js采用ro

第二章、框架设计的核心要素

  1.提升用户的开发体验      开发体验是衡量一个框架的指标之一      关于快速定位问题和打印警告信息和其他重要信息 Vue.js3  源码中使用 initCustomFormatter函数       该函数作用:在开发环境下自定义formatter的      Chrome为例,打开 DevTools勾选 Console --> Enable custom formatters        2.控制框架代码体积    框架的大小也是衡量框架的标准之一    1. 关于警告       Vue.js3中每一个warn都配合 __DEV__常量的检查      Vue.js采用ro

Codeforces 1670 E. Hemose on the Tree

题意给你个数p,n=2^p;有一棵树有n个节点,告诉你怎么连边;每个点有个权值,每条边也有个权值,权值需要自行分配,[1,2,3..n...2n-1],总共2n-1个权值;你需要选一个节点,使得他到所有其他边或者节点的简单路径的异或最大值最小。思路显然,给你个p,不直接给你n一定是有潜藏的东西的,分析一下,n=2^p,那么n的结构一定是1000000,1后面都是0,那可以推测出最终的答案一定是小于等于n的1.初始节点可以随便选的,但是它的值一定设为n2.处于一个点的连接点与边来说,他们的关系一定是x,x+n,这样他们的异或值一定是n,可以保证答案在0-n之间改变,注意x与x+n的位置设置3.如

Codeforces 1670 E. Hemose on the Tree

题意给你个数p,n=2^p;有一棵树有n个节点,告诉你怎么连边;每个点有个权值,每条边也有个权值,权值需要自行分配,[1,2,3..n...2n-1],总共2n-1个权值;你需要选一个节点,使得他到所有其他边或者节点的简单路径的异或最大值最小。思路显然,给你个p,不直接给你n一定是有潜藏的东西的,分析一下,n=2^p,那么n的结构一定是1000000,1后面都是0,那可以推测出最终的答案一定是小于等于n的1.初始节点可以随便选的,但是它的值一定设为n2.处于一个点的连接点与边来说,他们的关系一定是x,x+n,这样他们的异或值一定是n,可以保证答案在0-n之间改变,注意x与x+n的位置设置3.如

Codeforces 1646 D. Weight the Tree

题意给你n个节点的树,让你给每个节点进行赋值,并且赋的值需要为正整数;同时当一个节点的值等于所有邻居节点的值的和时,这个点为好点;求出一组赋值情况,满足树的好点个数最大化的同时,所有节点赋值的总和最小;思路1.显然无法存在两个好点相邻存在的情况(除非只有两个节点);2.对于坏点直接赋值为1即可;3.可以树形dp解决,f[x][0/1][0/1],第一维代表以x为根,第二维代表是否为好点,第三维代表是好点的个数/子树节点值的总和代码#includeusingnamespacestd;vectorg[200005];intf[200005][2][2];longlongans[200005];in

Codeforces 1646 D. Weight the Tree

题意给你n个节点的树,让你给每个节点进行赋值,并且赋的值需要为正整数;同时当一个节点的值等于所有邻居节点的值的和时,这个点为好点;求出一组赋值情况,满足树的好点个数最大化的同时,所有节点赋值的总和最小;思路1.显然无法存在两个好点相邻存在的情况(除非只有两个节点);2.对于坏点直接赋值为1即可;3.可以树形dp解决,f[x][0/1][0/1],第一维代表以x为根,第二维代表是否为好点,第三维代表是好点的个数/子树节点值的总和代码#includeusingnamespacestd;vectorg[200005];intf[200005][2][2];longlongans[200005];in