随笔分类 - DP
摘要:原题链接 题目简述 给定一串数字,对于一串连续的数字,可以将它们染色成任意数字,问最少要多少次才能把这串数字全部染成同种颜色。 思路解析 我们可以对题目进行一下转化:所有数字全部染成同种颜色意味着相邻异色数对的数量为 ,那我们每次对整段的区间染色,只有以下两种情
阅读全文
摘要:洛谷传送门 AcWing 解题思路 这题可以转化为一个重复覆盖问题,由于三个点可以确定一条抛物线,而这里的抛物线必定经过原点,所以可以用不是原点的两个点确定一条抛物线。 对于一个覆盖情况我们可以用一个二进制数 state 表示,其中从右往左从 开始编号,第 $
阅读全文
摘要:题意简述 给定一棵树,要求树中任意一边至少选中一点,求最少满足题意的选点数 解题思路 我们可以先画出示意图来 橙色点表示选,灰色点表示不选。 我们可以用 来表示目前在考虑第i个点,选择情况是j,当 $j =
阅读全文
摘要:题目描述 如果一个数 的约数之和 (不包括他本身)比他本身小,那么 可以变成 , 也可以变成 例如, 可以变为 , 可以变为 。 限定所有数字变换在不超过 的正整数范围内进行,求不断进行数字变换且不出现重复数字的最多变换步数。
阅读全文
摘要:题目描述 给定一棵树,树中包含 个结点(编号 ~ )和 条无向边,每条边都有一个权值。 请你在树中找到一个点,使得该点到树中其他结点的最远距离最近。 解题思路 在一棵树上,每一个节点都有两种选择,向父亲走或者向儿子走。 所以我们不妨进行一下
阅读全文
摘要:题目描述 给定一棵树,树中包含 个结点(编号 ~ )和 条无向边,每条边都有一个权值。 现在请你找到树中的一条最长路径。 换句话说,要找到一条路径,使得使得路径两端的点的距离最远。 注意:路径中可以只包含一个点。 解题思路 首先因为是树所以有这样的一个性质
阅读全文
摘要:题目描述 设一个 个节点的二叉树 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
阅读全文
摘要:题目描述 给你一个序列 ,要求你把它变成一个递增的序列,将目标序列与这个序列对应位置上所有数的差值和成为修改花费,求最小的修改花费。 解题思路 对于序列上的修改是一眼 ,具体是应该如何去 首先我们思考一下,可
阅读全文
摘要:题目描述 有 种物品和一个容量是 的背包。 物品一共有三类: 第一类物品只能用1次(01背包); 第二类物品可以用无限次(完全背包); 第三类物品最多只能用 次(多重背包); 每种体积是 ,价值是 。 求解将哪些物品装入背包,可使物品体积总和不超过背包
阅读全文
摘要:AcWing题目传送门 洛谷题目传送门 题目大意 一个投机倒把的奸商想要通过城市不太健全的贸易系统坑点钱,任意城市都可以买入或者卖出水晶球,他想尽量在便宜的城市买入,在贵的城市卖出,以此赚取更高的差价,他必须从一号城市开始旅行,到 号城市结束。请问他最多可以赚多少钱? 解题思路
阅读全文