CF 刷题笔记 贰

第一篇写不开了,再开一篇。

1558D

难度:2600。

仙品。注意到题目相当于告诉我们 \(m\) 组大小关系,让我们求可能的排列个数。如果我们知道小于号的个数 \(c\),那么使用插板法可得答案就是 \(C_{2n-c-1}^n\),于是问题转化为求 \(c\)。我们维护一个集合 \(S\),存储所有的前面是小于号的数,答案就是 \(\# S\),于是考虑一个条件 \(a_i<a_j\) 时,如果 \(j\) 不在 \(S\) 中,也就是说 \(a_j\) 前面是 \(\le\),那就把 \(j+1\) 插进去,并且把 \(S\) 中所有比 \(j\) 大的数加一。我们考虑如何用一个 DS 维护集合 \(S\),也就是说这个 DS 需要维护插入和区间加,于是想到平衡树。code

420D

难度:Unknown,洛谷蓝

反着考虑就完了。code

posted @ 2024-12-28 10:12  lhc0707  阅读(3)  评论(0编辑  收藏  举报