会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
lwiwi
博客园
首页
新随笔
联系
订阅
管理
2026年2月7日
Codeforces Round 700 (Div. 1)_B2. Painting the Array II
摘要: 传送门 做法一:首先将给定数组重复的数删掉。对于最近的两个相同的数,令其位置为\([l,r]\),看作是覆盖区间\([l,r]\)的一条线段。那么对于当前数组的若干条线段,若保留该线段,则代表这两个数涂相同颜色且在该颜色下相邻。发现若一个线段完全包含另一条线段,则一定选小的线段更优。对于两条不完全包
阅读全文
posted @ 2026-02-07 13:03 孤枕
阅读(2)
评论(0)
推荐(0)
2026年2月6日
Codeforces Round 958 (Div. 2)_E. Range Minimum Sum
摘要: 传送门 首先如果不带修,很显然是一道单调栈的例题。 如果带修其实只需要考虑删除该元素之后产生了什么影响。三个方面: 以其自身为最小值的所有区间的贡献需要撤销 所有包含该元素,但最小值不是该元素的区间,需要撤销一定贡献 原本以该元素作为边界的区间,可能在删掉该元素之后能够继续扩展,此部分贡献需要新加
阅读全文
posted @ 2026-02-06 17:25 孤枕
阅读(2)
评论(0)
推荐(0)
Codeforces Round 945 (Div. 2)_D. Cat, Fox and Maximum Array Split
摘要: 传送门 纪念vp想到题解最后半句话的*2400 首先考虑\(m\)的取值,由于不管怎么划分区间,总有一个区间包含整个序列的最大值,所以\(m\)一定是整个序列的最大值的倍数 那么考虑怎么找最大值。发现对于\([1,n]\)这一整个区间,其\(f\)值一定是\(maxn*n\),故而枚举\(maxn\
阅读全文
posted @ 2026-02-06 17:25 孤枕
阅读(1)
评论(0)
推荐(0)
Codeforces Round 975 (Div. 2) D. Speedbreaker题解
摘要: 传送门 首先,由于所有城市排成了一条直线,这是一个很关键的性质。假定攻占的第一个城市为第\(D\)个城市,那么实际上,对于\(D\)左边的所有城市\(i\)(实际上右边也可以算),我们都可以算出,在攻占到该城市之前,最多可以往右走多少步,记为\(x_{i}\)。于是貌似我们可以推导出对于一个城市\(
阅读全文
posted @ 2026-02-06 17:24 孤枕
阅读(2)
评论(0)
推荐(0)
2026年1月30日
E2. Beautiful Patterns (Hard Version)
摘要: 传送门 首先结论:对于两个子数组,若他们回文中心不重合,则他们各自为回文串这两件事互相独立。 一个子数组回文,设该子数组长为\(len\),即相当于对这个子数组产生$ \left \lfloor \frac{len}{2}\right \rfloor$个约束: \(a_{l}=a_{r},a_{l+
阅读全文
posted @ 2026-01-30 18:47 孤枕
阅读(1)
评论(0)
推荐(0)
2025年9月11日
经典问题:区间最长合法括号子序列长度
摘要: 传送门 可以用线段树维护,\(ln\)表示当前区间无法匹配的左括号数量,\(rn\)表示当前区间无法匹配的右括号数量 #include<bits/stdc++.h> #define int long long using namespace std; const int N = 4e6 + 10;
阅读全文
posted @ 2025-09-11 19:21 孤枕
阅读(24)
评论(0)
推荐(0)
2025年8月23日
CF1824B2 LuoTianyi and the Floating Islands (Hard Version)
摘要: 传送门 首先当\(k\)为奇数时,若一个点想为好点,必须他自己就是岛屿之一,所以\(k\)为奇数时答案一定是\(1\) 接着考虑\(k\)为偶数时怎么求好点数。我们发现,若一个点为好点,则当其延某一条边移动一次得到的点的答案一定不能更优,否则这次移动得到的点才是好点。也就是说,对于好点所连的所有边,
阅读全文
posted @ 2025-08-23 16:39 孤枕
阅读(15)
评论(0)
推荐(0)
2025年8月15日
CF1886E I Wanna be the Team Leader
摘要: 传送门 需要先注意到,将员工按照能力值从大到小排序后,分配给每个项目的员工一定是连续的。 再利用这个性质,设\(dp_S\)表示完成\(S\)集合的项目所需最少员工为多少个。并记录每个集合是由哪一个子集转移过来的,最后输出方案数 启示:需先观察性质,才能设计dp及状态转移方程 #include<bi
阅读全文
posted @ 2025-08-15 11:02 孤枕
阅读(10)
评论(0)
推荐(0)
2025年8月13日
CF1943D2 Counting Is Fun (Hard Version)
摘要: 传送门 性质1:规定\(a_0=a_{n+1}=0\),则满足条件的序列一定有\(a_i≤a_{i-1}+a_{i+1}\) 利用这个性质,我们可以设\(dp_{i,j,k}\)表示填充到第\(i\)位,第\(i-1\)位填\(j\),第\(i\)位填\(k\)的方案数,转移即 \(dp_{i,j,
阅读全文
posted @ 2025-08-13 15:40 孤枕
阅读(4)
评论(0)
推荐(0)
CF1327F AND Segments
摘要: 传送门 1.位运算相关,看每一位是否独立。此题中每一位独立,所以可以对每一位单独算方案数最后相乘 2.DP状态设计,预处理及空间时间复杂度优化。首先设\(dp_{i,j}\)表示填好\(1\)~\(i\)位时,最后一个\(0\)在\(j\)位置的方案数,此时若想要转移,需要考虑对于当前第\(i\)位
阅读全文
posted @ 2025-08-13 13:06 孤枕
阅读(10)
评论(0)
推荐(0)
下一页
公告