01 2023 档案
摘要:洛谷传送门 AcWing 解题思路 这题可以转化为一个重复覆盖问题,由于三个点可以确定一条抛物线,而这里的抛物线必定经过原点,所以可以用不是原点的两个点确定一条抛物线。 对于一个覆盖情况我们可以用一个二进制数 state 表示,其中从右往左从 开始编号,第 $
阅读全文
摘要:题意简述 给定一棵树,要求树中任意一边至少选中一点,求最少满足题意的选点数 解题思路 我们可以先画出示意图来 橙色点表示选,灰色点表示不选。 我们可以用 来表示目前在考虑第i个点,选择情况是j,当 $j =
阅读全文
摘要:题目描述 如果一个数 的约数之和 (不包括他本身)比他本身小,那么 可以变成 , 也可以变成 例如, 可以变为 , 可以变为 。 限定所有数字变换在不超过 的正整数范围内进行,求不断进行数字变换且不出现重复数字的最多变换步数。
阅读全文
摘要:题目描述 给定一棵树,树中包含 个结点(编号 ~ )和 条无向边,每条边都有一个权值。 请你在树中找到一个点,使得该点到树中其他结点的最远距离最近。 解题思路 在一棵树上,每一个节点都有两种选择,向父亲走或者向儿子走。 所以我们不妨进行一下
阅读全文
摘要:题目描述 给定一棵树,树中包含 个结点(编号 ~ )和 条无向边,每条边都有一个权值。 现在请你找到树中的一条最长路径。 换句话说,要找到一条路径,使得使得路径两端的点的距离最远。 注意:路径中可以只包含一个点。 解题思路 首先因为是树所以有这样的一个性质
阅读全文
摘要:题目大意 给定一张正权无向图,定义冲突值为一个集合内权值最大的边,将一张图上的点,分成两部分,不同部分的点在原图上的边作废,求最小化最大冲突值,并输出。 解题思路 1. 二分答案 + 二分图判定 由于要求最小化最大冲突值,遇到最大值最小化的问题,经验上可以采用二分答案
阅读全文
摘要:题目描述 设一个 个节点的二叉树 tree 的中序遍历为( ),其中数字 为节点编号。 每个节点都有一个分数(均为正整数),记第 个节点的分数为 ,tree 及它的每个子树都有一个加分,任一棵子树 subtree(也包含 tree
阅读全文
摘要:题目描述 假设你有一条长度为 的木版,初始时没有涂过任何颜色。 你希望把它的 个单位长度分别涂上红、绿、蓝、绿、红色,用一个长度为 的字符串表示这个目标:RGBGR。 每次你可以把一段连续的木版涂成一个给定的颜色,后涂的颜色覆盖先涂的颜色。 例如第一次把木版涂成 RRRRR,
阅读全文
摘要:题目简述 走在一个棋盘上,棋盘上染着颜色,有三种颜色:红、黄、无,当你从一个格子走向另一个格子时,同色格子不花费,异色格子花费 ,无色格子不能走,但是可以用魔法将其染成当前所处格子的颜色,花费 。求 到 的最短路。 解题思路 因为这个数
阅读全文
摘要:摘花生 #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 1010; int f[N][N], T, n, m, w[N][N]; int main() { s
阅读全文
摘要:题目描述 每一头牛的愿望就是变成一头最受欢迎的牛。 现在有 头牛,编号从 到 ,给你 对整数 ,表示牛 认为牛 受欢迎。 这种关系是具有传递性的,如果 认为 受欢迎, 认为 受欢迎,那么牛 也认为牛 $
阅读全文
摘要:题目描述 给你一个序列 ,要求你把它变成一个递增的序列,将目标序列与这个序列对应位置上所有数的差值和成为修改花费,求最小的修改花费。 解题思路 对于序列上的修改是一眼 ,具体是应该如何去 首先我们思考一下,可
阅读全文
摘要:题目描述 给定一棵包含 个节点的有根无向树,节点编号互不相同,但不一定是 。 有 个询问,每个询问给出了一对节点的编号 和 ,询问 与 的祖孙关系。 对于每一个询问,若 是 的祖先则输出 ,若 是 的
阅读全文
摘要:解题思路 这题也是一个比较裸的差分约束:多了的那个输出 的其实就是在差分约束系统中 号点和 号点没有约束关系,也就是 和 号不连通。由于这里要求最大距离,所以我们在系统中应该跑最短路 从题目中我们可以看出这样几条约束关系: $\lar
阅读全文