摘要: CF1717E. Madoka and The Best University 数论真有意思啊哈! 解题思路 在 $a,b,c$ 中最特殊的是 $c$,因为 $a,b$ 是对称轮换的。所以我们考虑枚举每个 $c$。范围为 $[1,n-2]$。 为了方便表示,我们令 $g=\gcd(a,b)$。 我们 阅读全文
posted @ 2022-09-05 17:16 huayucaiji 阅读(44) 评论(0) 推荐(0) 编辑
摘要: XM6138 分糖果 stO jc Orz 解题思路 很神奇的一题。 看到题目首先想到的就是二分答案。那么问题转化为了如何验证一个答案 $x$。 我们定义函数 $f_{i,j}$ 表示考虑前 $i$ 个小朋友,是否可以分成 $j$ 段,使得每一段都满足和小于 $x$。这个函数很好转移: $$f_{i 阅读全文
posted @ 2022-09-04 14:55 huayucaiji 阅读(24) 评论(0) 推荐(0) 编辑
摘要: AGC001 C Shorten Diameter 本题不难,不至于紫( 解题思路 看到 $n\leq 2000$ 就知道是 $O(n^2)$ 没得跑了。关键如何 $O(n^2)$。 我们可以对 $k$ 进行分类。 如果 $k$ 为偶数,那么我们知道我们删点过后得到的树的直径一定有一个中心点 $u$ 阅读全文
posted @ 2022-09-04 14:41 huayucaiji 阅读(20) 评论(0) 推荐(0) 编辑
摘要: E. Count Seconds 赛时绝杀了((( 我们算一下出度为 $0$ 的节点 $t$ 所需要排出多少次 $1$。通过简单的拓扑可以算出来,这非常简单。问题出在并不是时时刻刻这个节点上又有数字,那么就会造成耽搁,使得时间变长。那么有多少时间是耽搁的呢? 我们假设 $dis_u$ 表示节点 $u 阅读全文
posted @ 2022-08-01 20:57 huayucaiji 阅读(93) 评论(0) 推荐(0) 编辑
摘要: Codeforces Educational Round 132 赛后解题报告 A. Three Doors (我都会做太简单了,下一个) B. Also Try Minecraft (我都会做,下一个) C. Recover an RBS 居然有笨B想着用搜索解决问题,甚至被人 hack 了。 没 阅读全文
posted @ 2022-07-23 16:26 huayucaiji 阅读(36) 评论(0) 推荐(0) 编辑
摘要: CF1707B Difference Array 本题十分巧妙,实际上暴力即可。 但是暴力的理论复杂度为 $O(n^2\log n)$。我们要进行 $n$ 轮,每轮有 $O(n\log n)$ 的排序。 不过真的如此吗? 我们设 $S=\sum\limits_{i=1}^n a_i$。那么进行过一次 阅读全文
posted @ 2022-07-20 08:11 huayucaiji 阅读(88) 评论(0) 推荐(1) 编辑
摘要: CF1705E Mark and Professor Koro 解题思路 我们可以知道,这里面可能会发生连锁反应,每次我们加入一个数字,就可能会导致前面一整条“链”不断合并,最后成为一个数。 比如说,我们现在有 $x,x+1,x+2,\dots,y$,我们再加入一个 $x$,我们这一串数字就会消失, 阅读全文
posted @ 2022-07-18 22:53 huayucaiji 阅读(55) 评论(0) 推荐(0) 编辑
摘要: NOIOL2022T2 讨论 解题思路 我们考虑什么时候不存在合法集合对。 两个集合不合法当且仅当他们有包含关系或无交集。我们考虑对集合排序,这样若 \(B⊆C,C⊆A\),那么有 \(B⊆A\)。这显然。所以排序可以简化计算。 我们从小到大枚举一遍,把现在所有扫过了的,包含元素 \(i\) 的最大 阅读全文
posted @ 2022-04-02 17:25 huayucaiji 阅读(26) 评论(0) 推荐(0) 编辑
摘要: LG2610旅游 解题思路 我们考虑把这张图转换一下。 我们旅行完了一个国家后,无论我们从哪个节点出发,我们应该可以停留在任意剩下两个节点上。我们可以选择其旁边两个国家旅行。由于不能走回头路,另外一边就无法访问了。这样我们把有公共边的两个国家连边,可以构建出一张图。 我们来探究这张图有什么性质。 \ 阅读全文
posted @ 2022-04-02 10:01 huayucaiji 阅读(20) 评论(0) 推荐(0) 编辑
摘要: LG4287双倍回文 解题思路 据说本体有很多乱搞方法,但是可以用 \(O(n)\) 得 manacher 解决。 我们按照正常的 manacher 做,我们要验证 \(i\) 这个位置是否可以为右半回文串的中心位置。由于右半回文串长度为偶数,所以中心位置只可能为 # 字符。我们找到位置 \(i\) 阅读全文
posted @ 2022-04-02 09:50 huayucaiji 阅读(17) 评论(0) 推荐(0) 编辑