摘要: Kruskal重构树 学习笔记 Kruskal重构树 基本思想 对于一个无向图,将每条边按边权升序排序。对于每一条边,若该边两点不在同一个连通块,新建一个节点向该边的两点建边,点权即为原边边权。最后建成一棵重构树。 举例:(原图来自rui_er Kruskal 重构树学习笔记) 性质 1.重构树是一 阅读全文
posted @ 2025-03-15 15:36 Hirasawayuiii 阅读(18) 评论(0) 推荐(0)
摘要: P10507 Georgia and Bob 题解 题目链接 题目大意 一个一行的棋盘,棋盘上有 \(n\) 个棋子,两人轮流选择一枚棋子向左移动若干格(会被其他棋子阻拦),询问谁必赢。 解题思路 显然为博弈论。注意到对于两个相邻(指棋子,不是位置)的棋子,若先手移动了左边的棋子若干格,后手也能移动 阅读全文
posted @ 2025-02-08 11:59 Hirasawayuiii 阅读(18) 评论(0) 推荐(0)
摘要: P10506 魔法珠 题解 题目链接 题目大意 \(n\) 堆物品,分别有 \(a_1,a_2,...,a_n\) 个。两人轮流选择一堆数量大于 \(1\) 的物品,将其分解为他的所有因数,再选择这些因数中的一堆删除。当有人无法操作(物品数量皆为 \(1\))时另一人胜利。 解题思路 显然本题是博弈 阅读全文
posted @ 2025-02-07 10:00 Hirasawayuiii 阅读(27) 评论(0) 推荐(0)
摘要: P10496 The Luckiest Number 题解 题目链接 题目大意 给定一个数字 \(L\),求仅由 \(8\) 组成的数字且是 \(L\) 的倍数的正整数中的最小值的位数。 解题思路 对于由 \(x\) 位 \(8\) 组成的数字,可以将其表示为 \(\frac{8}{9}(10^x- 阅读全文
posted @ 2025-01-21 07:58 Hirasawayuiii 阅读(48) 评论(0) 推荐(0)
摘要: [ABC222G] 222 题解 题目链接 题目大意 给定一个数字 \(L\),求仅由 \(2\) 组成的数字且是 \(L\) 的倍数的正整数中的最小值的位数。 解题思路 对于由 \(x\) 位 \(2\) 组成的数字,可以将其表示为 \(\frac{2}{9}(10^x-1)\),故原题转化为求满 阅读全文
posted @ 2025-01-21 07:58 Hirasawayuiii 阅读(37) 评论(0) 推荐(0)
摘要: 数论 线性筛 枚举倍数 int p[N], f[N], idx; void sieve() { n = read(), f[0] = f[1] = 1; for(int i = 2; i <= n; i++) { if(!f[i]) p[++idx] = i; for(int j = 1 ;j <= 阅读全文
posted @ 2025-01-18 09:56 Hirasawayuiii 阅读(131) 评论(0) 推荐(1)
摘要: 树链剖分 基本架构 原理:将树以一种划分方式分成若干条链,转换为区间,再用数据结构维护 一般形式:两遍dfs初始化+数据结构(线段树/树状数组) 解决的问题:各种树上区间操作(维护的东西越多,解决问题的范围就越大) 两遍dfs维护的: $fa$[ ](父节点) $son$[ ](重儿子) $dep$ 阅读全文
posted @ 2025-01-17 17:54 Hirasawayuiii 阅读(34) 评论(0) 推荐(0)
摘要: 题目链接 题目大意 对于一棵树,求出一个点对于给定的三个点(以下简称 \(x\),\(y\),\(z\) 且可以重复)距离最短。 题解 对于点的距离,不难想到 LCA 处理。而对于本题,则有两种情况。 第一问 三点中有一为另外两个点的祖先时,所求目标点(以下简称 \(v\) )的深度(简称 \(d_ 阅读全文
posted @ 2024-12-25 20:56 Hirasawayuiii 阅读(37) 评论(2) 推荐(0)
摘要: 题目链接 题目大意 城堡有 m 个敌人、n 个能发射导弹的防御塔。导弹的速度固定,都为 v。导弹需要 T1 秒发射,T2 分钟冷却,还需要防御塔到敌人距离的 dis/v 的时间。给定防御塔和敌人的坐标,求需要多少分钟能够消灭所有敌人。 推导思路 如果短的时间能够消灭所有敌人,则长的也一定能。所以答案 阅读全文
posted @ 2024-12-25 20:55 Hirasawayuiii 阅读(46) 评论(0) 推荐(0)