CF1244C 题解 CF1244C 题解 思路 我们看到题目,给定四个数 \(n\)、\(p\)、\(w\)、\(d\),求解三元一次不定方程组: \[ \left\{ \begin{array}{l} x\cdot w+y\cdot d=p\\ x+y+z=n \end{array} \right. \] 观察一下你就会发现 \(z\) 的值是你可以随便指定的,因为他只对 \(n\) 产生影响,而不对方程一产生任何 2024-02-28 题解 > CodeForces
AT_abc255_e 题解 AT_abc255_e 题解 思路 朴素做法 首先我们考虑一定可以有一个点是幸运数,于是我们可以考虑遍历每一个 \(S_i\),钦定 \(a_i\) 是一个幸运数,然后我们就可以反推出 \(a_1\) 的值。然后我们统计 \(a_1\) 重复被计算出的次数。因为只要有一个 \(a_i\) 被确定了,整个序列就确定了。也就是说,\(a_1\) 的重复次数就是我们要求的最多的幸运数个数,因为他们都是同 2024-02-28 题解 > AtCoder
OiClass 2024 CSP-J 公益赛 #4 题解 引言 这场比赛出题人认为是 \(\approx\) CSP-J + 的难度,预估的平均分在 \(200\) 分左右。比赛的命题思路简单来说就是第一题水题但是考虑在题面里面写很多抽象的东西混淆视听;第二题有些思路的结论题,如果猜出了结论复杂度应该还是非常优秀的;第三题是本场比赛最难的题,算法本身并不难,但是这个思路上有一个优化很难想,这就给很多选手做题带来了很大的困扰,可能无人 AC;第四题是原题加 2024-02-28 题解 > OiClass #题解 #OiClass #公益赛
THUWC 2024 游记 THUWC 2024 游记 Day -INF 大喜,第一年打比赛就直通 THUWC 了,开心到飞起。 Day -7 开始寒假集训前一天,发现重庆天气很冷,极限跑去优衣库不看价格买了一件羽绒服。付款的时候 699 真的蚌埠住了,还好 Mate 60 Pro 专属卡返现了几十块,小回了一波血。 Day -6 \(\sim\) -1 在番禺校区集训,学了一堆树上的算法,感觉很懵。集训还没结束就走了。 D 2024-02-28 游记 #游记 #THU
OiClass 公益赛宣传 OiClass 公益赛宣传 活动意义 为了增强 oiClass 社区活跃度,提升 oiClass 用户的 oi 水平,促进 oier 之间的联结互动,特别开展本公益活动,希望大家踊跃参加。 oier 水平的提升,不仅在学,更在练,多打比赛无疑是提升水平的有效渠道。 本次活动由 TYOI 高水平选手进行命题和验题,由 chxulong 把控题目质量,题目难度控制在 CSP-J 水平,对于冲刺本年 2024-02-25 OiClass #OiClass #宣传 #公益赛
CF1368E Ski Accidents 题解 CF1368E Ski Accidents 题解 思路 首先我们看到题中给出,这个图是一个 DAG,因此很容易的就可以想到拓扑排序。那么我们在思考一下,如何满足题目中给出的删除的点不超过 \(\frac{4}{7}n\) 的要求。我们可以举一个例子,看到下面的二叉树: 如果我们按照拓扑排序遍历,每次遍历到深度对 \(3\) 取模为 \(0\) 的节点,就删除。那么很显然,这个策略可以正常的分割出 2024-02-23 题解 > CodeForces
洛谷 P10170 [DTCPC 2024] 小方和小立方 题解 洛谷 P10170 [DTCPC 2024] 小方和小立方 题解 思路 一眼看上去,这题非常非常的难,对吧???好吧,我的第一反应就是 DP,但是 DP 似乎并不能非常优雅的解决问题。然后我就想到了马拉车,但是马拉车+特判实现起来实在是有些繁琐。 突然,我猛地发现,如果每个字母的出现次数不超过 \(2\) 次的话,回文串的长度最多就是 \(52\)。也就是说,暴力的时间大约是 \(O(52n)\) 2024-02-17 题解 > 洛谷
洛谷 P10160 [DTCPC 2024] Ultra 题解 洛谷 P10160 [DTCPC 2024] Ultra 题解 题意 给定一个01串,可以将串中的 1010101...010101 替换为 0101010...101010 反之亦然。求可能的最小的 1 的数量。 思路 我们可以发现,如果有连续的多个(\(\geq2\))\(0\),那么我们不可能将连续 \(0\) 左侧或右侧的一起处理。因此,为了方便,我们可以将左右两侧分开处理。当我们将左右两 2024-02-17 题解 > 洛谷
Oiclass PU2TI P3791 棋子题解 思维 我们可以优先考虑以下的三情况: 1 2 3 此时我们会发现 1 和 2 挡住了 3 ,那么此时 1 和 2 必然将先死一个。 1 3 5 此时我们会发现所有棋子都可以先死,因此方案数为棋子数的全排列数,即其阶乘。 1 2 4 此时 1 和 2 挡住了 4 ,只要 1 或 2 先死一个,那么后面的就可以按照方案二的情况来计算。 因此我们可以考虑维护一个像方案二一样的 1 3 5 7 9 . 2023-12-16 题解 > OiClass
CF985C 题解 建议升绿 这道题是一道贪心。很容易想到,我们你需要先进行一次排序,然后再进行一些操作。 首先我们可以排除无解的情况,当第 \(n\) 短的木板的长度与最短的木板的长度之差 \(> l\) 时,不可能有任何一种符合题意的方案。这个很好证,有兴趣的朋友可以自己证一下。 然后我们考虑如何制定一个合理的贪心计划。首先我们可以尝试确定一个最大的桶大小,这对后面的操作有很大的帮助。很显然,最大的桶大小就 2023-12-15 题解 > CodeForces