摘要: 题意 你本身有一个权值。 每个点有一个权值,到达一个点可以获得这个权值; 每条边也有一个权值,只有你自己当前权值大于等于边权才可以走这条边。 q次询问,每次给出初始点和初始边权,输出可获得的最大边权。 思路 krustal重构树 一个点可以获得自己子树所有点权之和。 子树求和 + 倍增跳就好了 代码 阅读全文
posted @ 2022-09-07 20:59 kingwzun 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 定义 首先新建 n 个集合,每个集合恰有一个节点,点权为 0。 每次加边按照边权从小到大加入。 每一次加边会合并两个集合,我们可以新建一个点,点权为加入边的边权, 同时将两个集合的根节点分别设为新建点的左儿子和右儿子。 然后我们将两个集合和新建点合并成一个集合。将新建点设为根。 不难发现,在进行 n 阅读全文
posted @ 2022-09-07 20:56 kingwzun 阅读(83) 评论(2) 推荐(1) 编辑
摘要: 原题链接 题意:判断图和补图 是否含有三元环 拉姆齐定理 拉姆齐定理: 在一个大于等于6个点的 完全图中,用红蓝两色染色,一定存在一个红色或者蓝色的三角形。 或者说:在总人数大于等于6的时候,一定存在这样的三个人,他们相互认识,或者相互不认识。 所以 点数n大于等于6:直接输出bad team,否则 阅读全文
posted @ 2022-09-07 17:06 kingwzun 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 给每个点按照度数大小编不同的号。 枚举点u,枚举和点u相邻的点v,枚举v的相邻且度数比uv大的点z,$ans+=cnt[z], ++cnt[z]$; 复杂度: 枚举uv的复杂度是 $O(n+m)$ 的,然后点z的数量不超过 $O(\sqrt{m})$ 个。 原因: 设与x相邻的度数大于x的点y有s个 阅读全文
posted @ 2022-09-07 12:00 kingwzun 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 原文:https://www.cnblogs.com/NicoDafaGood/p/7552893.html 题意 给一个n个点,m条边的无向图,求该图与其补图的三元环个数. (n<=1e5,m<=1e5,保证没有自环) 思路 首先考虑一个完全图,任意三个点都可以构成一个三元环. 因此完全图三元环的 阅读全文
posted @ 2022-09-07 11:37 kingwzun 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 理解 时间复杂度 $O(M \sqrt{M})$ 作用 求出无向图的所有三元环 过程 首先要对所有的无向边进行定向,对于任何一条边,从度数大的点连向度数小的点,如果度数相同,从编号小的点连向编号大的点。 此时这张图是一个有向无环图。 枚举每一个点u,然后将u的所有相邻的点都标记上“被u访问了”, 然 阅读全文
posted @ 2022-09-07 11:29 kingwzun 阅读(142) 评论(0) 推荐(0) 编辑
摘要: # 概述 **定义** 类图(Class Diagram)是用于显示一组类、接口以及它们之间关系的图。 类图用于对系统中的各种概念进行建模,并描绘出它们之间的关系,主要通过系统中的类以及类之间的关系来`描述系统的静态结构`。 **主要模型元素:** 1. 类 2. 接口 3. 关系(依赖、泛化、关联 阅读全文
posted @ 2022-09-07 08:02 kingwzun 阅读(1466) 评论(0) 推荐(1) 编辑