Loading

上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 33 下一页
摘要: \(\text{solution}\) 发现一个重要的性质,那就是排完序后依次取,最远的距离不会超过 \(3\),因为不会有 \(3\) 个一样的东西放在一起,然后我们直接 DP 求解就完了。 但是我们要先排序贪心做才是对的。 阅读全文
posted @ 2024-08-24 15:42 Alexande 阅读(17) 评论(0) 推荐(0)
摘要: \(\text{solution}\) 很好的一道题目。 我们考虑一个事情,就是如果一个区间内的数都大于/小于某个数,可以看作是一张二分图上左部点一段区间向右部点的一段前缀/后缀连边,然后我们钦定除了这个区间内的数其他数都不能选 \(x\) 这个数,因为 \(x\) 这个树必须出现在这个区间内。 然 阅读全文
posted @ 2024-08-24 13:45 Alexande 阅读(19) 评论(0) 推荐(0)
摘要: \(\text{solution}\) 一道很好的反过来的 DP 题。 首先我们考虑到设 \(f_{i, j}\) 为前 \(i\) 个数用了 \(j\) 个乘号最小/最大的答案是多少,但是我们发现状态数是 \(O(n^2)\),转移数是 \(O(n)\) 的,总复杂度就是 \(O(n^3)\),咋 阅读全文
posted @ 2024-08-24 10:52 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: \(\text{solution}\) 确实是挺好的一个题,唤醒了我对 MST 的尘封的回忆。 首先发现这个东西是一个最小生成树,然后我们发现建 \(O(n^2)\) 条边明显不行,于是我们按照 \(x, y, z\) 各排一遍序后相邻之间连边,不难证明这样连的边是包含最小生成树边集的,然后直接克鲁 阅读全文
posted @ 2024-08-24 10:02 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: 小孩子不能看的东西qwq。 阅读全文
posted @ 2024-08-22 21:54 Alexande 阅读(32) 评论(1) 推荐(1)
摘要: 可能其他人觉得很简单,但是我觉得还是比较巧妙的。 就是如何在接受复杂度内合并两个序列和的信息并且保留前 \(k\) 小。 我们肯定先把两个序列 \(a, b\) 排序。 然后我们固定一个 \(i\),如果此时暴力枚举到的 \(j\) 满足 \(a_i + b_j\) 可以替换掉目前维护的前 \(k\ 阅读全文
posted @ 2024-08-22 16:11 Alexande 阅读(9) 评论(0) 推荐(0)
摘要: \(\text{solution}\) 首先我们考虑设状态 \(f_{i, j, k}\) 表示到了 \([i, j]\) 这个区间是否可以用到 \(k\) 这个操作,不难发现转移是平凡的,你甚至可以用各种数据结构,用 ST 表做到 \(O(n^3)\)。、 但是发现距离 \(O(n^2)\) 还很 阅读全文
posted @ 2024-08-22 09:16 Alexande 阅读(18) 评论(0) 推荐(0)
摘要: \(\text{solution}\) 首先我们考虑以下四种情况是先手必败: \(n = 0, m = 0\)。 \(n = 1, m = 0\)。 \(n = 0, m = 1\)。 \(n = 1, m = 1\)。 然后进行到这一步就 OK 了,我们开始讨论 \(n > 1\) 或者 \(m 阅读全文
posted @ 2024-08-15 08:51 Alexande 阅读(9) 评论(0) 推荐(0)
摘要: 没有什么东西就别进来看了 阅读全文
posted @ 2024-07-10 15:31 Alexande 阅读(54) 评论(0) 推荐(0)
摘要: 博弈论定义 博弈论,是经济学的一个分支,主要研究具有竞争或对抗性质的对象,在一定规则下产生的各种行为。博弈论考虑游戏中的个体的预测行为和实际行为,并研究它们的优化策略。 以上摘自 OI-Wiki。 具体来说,博弈论是一个二人不断进行决策的过程。 博弈论的分类 博弈论分为三类: 公平组合游戏。 非公平 阅读全文
posted @ 2024-04-19 07:49 Alexande 阅读(106) 评论(0) 推荐(0)
摘要: 题目大意 给你一个 \(n \times 20\) 的棋盘,每次可以把一个棋子挪到右边第一个空格处,问你先手必胜还是必输。 题目思路 我们不难发现每一行的独立的有向图博弈问题,所以我们只需要求出每一行的 SG 函数再异或起来就好了。 发现一个事,棋子的移动本质上的阶梯上棋子个数的转移,所以转化成的阶 阅读全文
posted @ 2024-04-18 19:21 Alexande 阅读(9) 评论(0) 推荐(0)
摘要: 题目大意 给定一个排列 \(a\),有 \(m\) 次操作,你可以任意顺序的选择,每次交换两个数,构造一种方案使得其为 \((1, 2, ..., n)\)。 题目思路 首先这种题,常见套路就是建模。 然后我们把交换的两个数连边,那么现在就是对于一个点 \(x\),要把 \(x\) 移到 \(a_x 阅读全文
posted @ 2024-04-18 14:14 Alexande 阅读(16) 评论(0) 推荐(0)
摘要: 题目大意 太复杂了不说了。 题目思路 考虑到移动一个 bud 结点可以消掉一个叶子结点,注意此时 bud 结点是广义的,具体定义为: bud 结点的所有儿子为非 bud 结点。 叶子节点为非 bud 结点。 不难发现,对于每个 bud 结点,都对应可以消掉一个叶子结点(更通俗的说是非 bud 结点) 阅读全文
posted @ 2024-03-14 15:29 Alexande 阅读(10) 评论(0) 推荐(0)
摘要: 题目大意 问你是否存在一个长度大于等于 \(3\) 的子序列为等差数列,注意原数列是一个 \(n\) 的排列。 \(1 \le n \le 5 \times 10^5\)。 题目思路 既然是长度大于等于 \(3\),那么不如就直接等于 \(3\) 去做。 考虑一个数 \(a_i\),它要作为这个等差 阅读全文
posted @ 2024-03-09 15:55 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: Codeforces Round #932(Div.2) 怎么只会 A 啊。 \(\text{Problem A}\) 题目大意 对于一个字符串 \(s\),可以进行 \(n\) 次操作(\(n\) 为偶数),每次操作有两种形式: 令 \(t\) 为 \(s\) 的反串,\(s = s + t\)。 阅读全文
posted @ 2024-03-07 17:19 Alexande 阅读(146) 评论(0) 推荐(0)
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 33 下一页