10 2022 档案
CSP2022 S游记
摘要:9.26:开坑。 没报 J 组主要是因为 J 比较垃圾,去抢小朋友的一等没什么意思。 初赛 刚拿到试卷就直接懵了,这 tm 是给人做的题?宇宙射线是什么奇妙东西,还有基数排序我根本不会啊,这个阅读程序 T2 看起来像是一个基数排序。 正序开题,发现把毒瘤的选择搞掉以后出题人就越来越逊,基数排序模拟了
P4349 [CERC2015]Digit Division
摘要:题目传送门 思路 以下纯考场思路。 今天模拟赛考到了这题的加强版,然后预处理写炸了, 变成 ,当是给 CSP 攒 rp 了。 首先一眼看到题目可能会没有思路,没什么关系,手推一个暴力 DP,设 表示以 为结尾的划分方案数,显而易见的转移是:$f_i=\sum_{
CF1742G Orray
摘要:题目传送门 思路 大抵算是一道位运算入门题? 首先为了使 的字典序最大,我们注意到 ,所以 必然是序列中最大的那个数。 接下来考虑贪心,设当前已经填了 个数,此时的或和为 ,则我们从大往小扫,若 的第 位为 ,则接下
CF1358D The Best Vacation
摘要:题目传送门 思路 做这道题主要是需要发现一个性质:选择的区间必定是从某一个月的最后一天开始往前连续的一段区间。 考虑如何证明这个结论,设这个月有 天,假设有更优的方案满足到下一个月的第 天,则我们发现下一个月中的拥抱数为 ,而显然任意一个长度为 $
CF1367E Necklace Assembly
摘要:题目传送门 思路 提供一种比现有的两篇题解都简单的方法。 我们枚举答案,发现最终的答案数组一定是由多个完全相同的块组成的,并且块长必定是 的因数。 然后我们考虑枚举答案 ,那么此时的块长必然是 ,那么可以得到块的数量为 ,
CF1311F Moving Points
摘要:题目传送门 思路 给出一种不需要脑子的四颗树状数组解法。 这四颗树状数组分别为:一颗维护负数,一颗维护负数个数,一颗维护正数,一颗维护正数个数。 首先考虑没有速度该怎么求。 不妨先按 从小到大排序,答案为 ,其中
CF1250C Trip to Saint Petersburg
摘要:题目传送门 思路 线段树入门题。 不妨固定一个右端点 ,把所有右端点小于 的区间都在 至此区间的左端点处 update 一个 ,然后每次都给区间 至 update 一个 ,最后查询区间 即可。 代码 //A tree without
[COCI2015-2016#2] VUDU
摘要:题目传送门 思路 这是一种简单的树状数组解法。 我们设偏移值表示 与目标平均数 的差值,显然,一个区间若能满足条件,需要满足此区间的偏移值之和 。 看到区间之和,我们就想到了前缀和,设 数组表示偏移值的前缀和数组,若我们固定一个右端点 ,则我们要求
[IOI2013]robots 机器人
摘要:题目传送门 思路 简单题,设函数 表示当时间为 时是否能够收拾好所有玩具,则 显然是单调的。 所以我们可以考虑二分。 设我们当前二分到 ,我们先把 数组按从小到大排序, 数组按从大到小排序。 我们先扫 数组,假设我们当前扫到了 ,
[IOI2014]friend 朋友
摘要:题目传送门 似乎是我的第一篇 IOI 题解? 思路 虽然说是 IOI 题,但是其实并没有那么难。 这个题目描述比较杂乱,简单的描述就是:给你一些关系,你需要选出一些点,使这些点的权值和最大,并且这些点之间两两都没有关系。 似乎像是一个 DP,所以我们不妨设出状态: 表示第 $i
CF1736C1 Good Subarrays (Easy Version)
摘要:题目传送门 思路 给出一种不需要脑子的做法。 首先我们把每个 都减去 ,这样原问题就转化为对于每一个左端点 ,寻找一段连续的区间,使得这段区间的最小值加上 后 。 容易发现这个东西具有单调性,显然可以双指针维护,因为~~我懒~~没有什么优化的必要,所
CF1195E OpenStreetMap
摘要:题目传送门 思路 单调队列板子。 设 表示第 行,区间为 到 的最小值,不难发现这个可以用单调队列 预处理出来。 接下来我们的问题就转化成了有一个矩阵,求所有宽为 ,长为 的子矩阵的最小值之和。 这个问题也十分好做,直
CF1062F Upgrading Cities
摘要:题目传送门 思路 考虑正反两遍拓扑,设 表示能到这个点的点数/从这个点出发能到的点数。 另一个显然的结论:正在拓扑的所有点之间是两两无法到达的。 设当前正在拓扑的点集为 : 若 中只含有一个数,显然这个 可以到达剩下没有拓扑的所有点。 若 $