苏联套娃
无意义文章。
保护膜举报vcmjnii.,,,,juuhmhnybgffbb hn jhjunhjum gbdf ghghyjhmyj hymn ffffffdbbbfghyujikj
b mkhhh m bmm mkbvnnnnnb v v gfgtfgfg tvg hh jhg gn gff ggfghhju hjumh gh gf fvg hghnjhmb nb bvv vf vf v v vg vg
v vb
本来想做一些 CF *2000 的,但是发现自己没有这个水平。所以我们来一起板刷一些 CF *800 吧!
PS:这篇文章和《补题日记》等是有区别的,所以不要问一些问题。
很久很久以前,有一条名叫王溪的小溪旁边有一个村庄。村里的人们都说着一种叫jz语的语言。村庄里种着很多的yq梅,不过这种梅花没有什么观赏价值,所以经常用来喂jr猪。
CF2155A - El fucho(已过)
容易想到,我们可以把每个人的 \(\max(a_i−ac,0)+\max(d_i−dr,0)\) 从小到大排序(设这些值是 \(v_i\))。如果一个 \(v_i\) 不合法,那么这一段后缀一定都不合法。所以只要找到第一个不合法的位置就行了。也就是需要找到第一个满足 \(i\leq v_i\) 的位置。
每次修改只会改变一个 \(v\) 值,所以可以通过在值域线段树上二分来找到这个位置。然后就做完了。
具体地,设 \(cnt_i = \sum\limits_{j=1}^n [v_j<i]\)。那么想让 \(v\) 为 \(i\) 的人来看,就需要 \(cnt_i \geq i\),也就是 \(cnt_i-i\geq 0\)。找到第一个不合法的位置是简单的。
CF2149B - Unconventional Pairs(已过)
若 \(n\) 为偶数,答案为 \(\sum\limits_{i\in S} r_i - \sum\limits_{j\in T}l_j\),其中 \(S,T\) 为不交的两个大小为 \(\frac{n}{2}\) 的集合。它显然等于 \(\sum\limits_{i=1}^n r_i - \sum\limits_{j\in T}(l_j+r_j)\)。于是可以按 \(l_j+r_j\) 从小到大排序,那么显然前面的 \(\frac{n}{2}\) 会在 \(T\) 集合中。
若 \(n\) 为奇数,会有一条线段不在 \(S\) 中也不在 \(T\) 中。枚举是哪条线段,用前后缀和算贡献就行了。最后当然还要加上 \(\sum\limits_{i=1}^n r_i-l_i\)。

浙公网安备 33010602011771号