CF1363D Guess The Maximums 题解 题意简述 有一个含有 nnn 个数字的数组 aaa(n≤1000n\le1000n≤1000),有 kkk 个不重合的集合 S1,S2,⋯ ,SkS_1,S_2,\cdots,S_kS1,S2,⋯,Sk,集合元素为 111 到 nnn 的整数,由此生成一个长度为 kkk 的密码 ppp,定义 pi=maxj∉Siajp_i=\displaystyle\max_{j\notin S_i}a_ 2025-08-17 题解 #题解
P12406 「CZOI-R3」消除序列 题解 我的方法使用了动态规划和树状数组,可能并不简洁,但题解太简略了,我暂时也不清楚怎么简单地维护题解里的 uuu 和 vvv,其他部分是原题解的详细版本。 首先分析一下操作(方便描述,标了个号): 将 aaa 循环左移一位。若在进行操作前 a1≠0a_1\neq 0a1=0,则消耗 xxx 点代价。 将 aaa 循环右移一位。若在进行操作前 a1≠0a_1\neq 0a1=0,则消耗 yy 2025-05-04 题解 #题解
P12404 「CZOI-R3」可爱棉羊 题解 本次比赛难度为入门至提高+/省选。 但是没有入门。 首先考虑最小值,如果只有一只羊感染,那么它传染边上任何一个位置,然后两只羊互相传染就行了,最小值是 222 只。如果有更多的羊感染,它们只要紧挨着排列,每一只都传染给边上已经感染的,最小值是 xxx 只。于是有: ansmin=max{2,x}ans_{\min}=\max\{2,x\} ansmin=max{2,x} 然后是最大值,先 2025-05-03 题解 #题解
CF1185E Polycarp and Snakes 题解 正难则反,考虑后涂色的不会被先涂色的覆盖,因此可以到序求解。 具体的,先找出输入矩阵中字典序最大的字母,从这个字母开始倒序枚举。 对于每一个字母,有出现过和没有出现过两种情况,如果没有出现过,直接在一个比它大的位置涂色一格就可以了(这一格将被覆盖,等于没涂),实现时可以直接填充为最后一个字母的第一格。如果出现过,判断它是否合法:首先判断出这个字母出现的所有位置是否都在同一行或同一列,再判断出现顺序 2025-04-14 题解 #题解
Vim for latex 快捷键表 编译与查看:\ll 编译,:copen看日志 快捷编辑 Key = Key = bd \begin{document} ed \end{document} be \begin{enumerate} ee \end{enumerate} bc \begin{cneter} ec \end{center} c \chapter{ s \section{ p \p 2025-04-06
CF2090B Pushing Balls 题解 贪心地,依次扫描每一行(列),如果当前格子有球,将它打上标记,如果没有球且之前没有打过标记,直接进入下一行(列),最终统计有没有有球而没有标记的格子,如果有,说明不合法,否则合法。 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253#include< 2025-03-30 题解 #题解
CF1481D AB Graph 题解 分类讨论。 【111】当 mmm 是奇数时,构造 $ \text{abababab} \cdots$ 的串即可满足题意,于是直接交替输出 111 和 222 凑足 m+1m+1m+1 个即可。 【222】当 mmm 是偶数时: 【2.12.12.1】存在一个点对,来回字母一样,如下图: 这时显然和【111】相同处理即可。 【2.22.22.2】存在三个点,路径上字母相同,如下图: 这时构造一个 2025-03-19 题解 #题解
CF1487E Cheap Dinner 题解 提供一种简单的线段树写法。 首先,给出朴素的 DP,令 dpi,jdp_{i,j}dpi,j 表示前 iii 种食物,第 iii 种选择了 jjj 的最小花费,显然得出转移: dpi,j=min(j,k) is OKdpi−1,k+ci,jdp_{i,j}=\min\limits_{\text{(j,k)\ is\ OK}}dp_{i-1,k}+c_{i,j} dpi,j=(j,k) is 2025-03-18 题解 #题解
CF1638D Big Brush 题解 正难则反,倒序操作,操作的一定是四个同色格子(或者其中有已经完成操作的点,其他同色),可以从此入手进行 DFS。 遍历每一个点,对其进行 DFS,首先检查是否已经完成处理(被标记为 000)、越界或者不符合条件(有杂颜色),如果没有问题,标记这四个格子(改为 000),对其四周的格子进行搜索,具体的,分别是以下 888 个点: 1234dfs(x-1,y);dfs(x-1,y+1);dfs(x+2 2025-03-06 题解 #题解
CF2062E1 The Game (Easy Version) 题解 如果存在 uuu 不在 vvv 的子树内且 wu>wvw_u>w_vwu>wv,则最大的 vvv 一定是可行的点。 此时,选择了这个点后,对方将无法选出一个点使得消除后剩下的点大于选择的点,因此可行。如果选择不出这样一个点,则无解。 首先想到枚举 vvv,并要求在 O(logn)O(\log n)O(logn) 时间内完成判断。看到这个时间复杂度以及最大值,我想到的是线段树 2025-02-12 题解 #题解