摘要: 洛谷 先考虑推导式子。 设我们选择的奶牛为 \(i\),选择的苹果是 \(j\)。 那么可以得到式子: \[|x_i-x_j|\le t_j-t_i \]直接拆掉绝对值,因为绝对值会取较大的值,所以不需要考虑二者大小关系的影响,然后即可推得两式: \[x_i+t_i\le t_j+x_j \]\[t 阅读全文
posted @ 2025-12-07 13:03 huhangqi 阅读(6) 评论(0) 推荐(0)
摘要: 洛谷 蒟蒻给一个时间复杂度较劣的线段树做法。 我们可以发现两个字符处理的结果和处理的顺序没有关系,那么我们可以先考虑将每一部分都尝试合成一个或没有字符,再进行合并。 那么我们其实可以考虑使用线段树直接维护每个区间内经过合成剩下了什么,即可判断是否正确。 代码: #include<bits/stdc+ 阅读全文
posted @ 2025-12-07 13:01 huhangqi 阅读(10) 评论(0) 推荐(0)
摘要: 洛谷 首先需要知道独立集是什么。 简单来讲独立集就是一个没有相邻的点的集合。 我们已经处理过比较多的独立集问题了。 比如常见的线性独立集。 代码: for(int i=1;i<=n;i++){ dp[i][0]=max(dp[i-1][1],dp[i-1][0]); dp[i][1]=dp[i-1] 阅读全文
posted @ 2025-12-07 13:00 huhangqi 阅读(10) 评论(0) 推荐(0)
摘要: 洛谷 提供一种在模拟赛上自己观察出来的方法。 由于树是递归定义的,并且每次加入一个值在这个子树中,左右儿子会调换,再将这个点加入左子树。因此我们每次加入一个节点,必须保证这个点未加入的左右子树的节点数量相等或者左子树未加入节点比右子树多一个。 这样的状态我们才可以做到选择完左右的节点。 以下我们称未 阅读全文
posted @ 2025-12-07 12:58 huhangqi 阅读(3) 评论(0) 推荐(0)
摘要: 洛谷 由于两个人都是绝对聪明的,所以每个人都只会做出最好的选择。 由于这个游戏在加完星门以后的情况已经确定了,所以开始时的树的形态以及开的星门就会直接导致游戏的胜负。 那么我们可以先处理出在根的胜负。 我们记录状态 \(dp_i\) 在 \(i\) 为 \(0\) 或者 \(1\),分别表示在这个点 阅读全文
posted @ 2025-12-07 12:57 huhangqi 阅读(7) 评论(0) 推荐(0)
摘要: Codeforces 对于 Easy 部分的做法: 很容易想到统计下来每个点的位置,枚举到达的点,然后进行转移统计即可。 时间复杂度 \(O(m^2n)\)。 由于个人习惯,代码中的 \(n\) 和 \(m\) 与原题目不同。 代码: #include<bits/stdc++.h> #define 阅读全文
posted @ 2025-12-07 12:55 huhangqi 阅读(12) 评论(0) 推荐(0)
摘要: AtCoder 以出发点为根,我们可以发现门一定在一个节点的祖先上,如果你走到一个点放下门,再继续走子树部分,然后去走其它子树时,一定会经过放门的这个点,那么此时这个门在这已经没有用了,如果你先去走其它子树,可以发现必定不是最优情况,所以门一定是在节点的祖先。 题目需要求出遍历完所有位置得到的答案。 阅读全文
posted @ 2025-12-07 12:54 huhangqi 阅读(4) 评论(0) 推荐(0)
摘要: 洛谷 由于每一个节点最多只会连出一条边,所以一个连通的图必定是基环树或者树。 如果是基环树,那么一定会有环,且经过移动后必定在环内,直接按照有环的情况输出即可。 对于一颗树,我们可以将这一个节点连向的点视为父亲,那么最后的答案就是这棵树的根。 我们可以通过并查集来模拟建树的过程,但是拆树的过程并不好 阅读全文
posted @ 2025-12-07 12:52 huhangqi 阅读(4) 评论(0) 推荐(0)
摘要: 洛谷 首先对于最大值,很容易想到找一条边拆掉,然后把两个直径相连,此时最长直径就是两个树的直径和再加一。 而对于最小值,我们将拆出来的两个树找中点,把中点连起来,此时就是两个的直径折半向上取整的和加一以及两个树的直径的最大值。 现在问题就是如何处理一条边两端的树的直径了。 我们首先可以一次 dp 以 阅读全文
posted @ 2025-12-07 12:50 huhangqi 阅读(9) 评论(0) 推荐(0)
摘要: 洛谷 一个比较简单的思路,不需要二分。 考虑逆向操作,从路径两端开始处理数值范围,将蚂蚁群大小视为一次查询。 由于树的两点之间的简单路径只有一条,所以每个点的范围是唯一的。 处理时和 \(10^9\) 取最小值,因为此时已经超过了蚁群最大数量,再继续可能会把 long long 爆了。 之后我们再把 阅读全文
posted @ 2025-12-07 12:48 huhangqi 阅读(4) 评论(0) 推荐(0)