码迷,mamicode.com
首页 > 其他好文 > 详细

csp-s模拟测试59(10.4)「Reverse」(set)·「Silhouette」(容斥)

时间:2019-10-05 20:20:20      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:序列   解释   迭代器   lin   deepin   模拟   最大值   枚举   最大   

A. Reverse


菜鸡wwb又不会了.....

可以线段树优化建边,然而不会所以只能set水了

发现对于k和当前反转点固定的节点x确定奇偶性所到达的节点奇偶性是一定的

那么set维护奇偶点,然后每次set找点删点注意边界

 

set在删点后原来的迭代器会玄学出错,xuefeng好像被坑了,所以lowerbound一下就不用++了

B. Silhouette


 

很玄学的容斥

考场多QJ了18分,因为如果1-n是个序列,好像就是一个简单的容斥.....

然后用能发现是以“L”形的形状向右推的,随便乘一下就出来了....

正解的话就很困难了2333333

将a,b排序,没有影响。

然后发现对于某个节点单独考虑贡献,我们从大到小枚举值,然后当s<min(a[i],b[j])时

当前节点就可以贡献了,因为我们排过序所以每次的形状不是“L”型就是矩形

那么我们开始容斥了,然后与xuefeng看(tui)了一下午,最后看大佬WD博客,大概明白了。

其实对于一个L型矩形我们分成两部分,然后我们设f[i]表式至少有i行最大值不是s的方案

用二项式反演可以推出恰好0行的方案数,(然而还是不会二项式反演QAQ)

$f[i]=\sum\limits_{i=0}^{a}C_a^i \times (S^i \times ( (S+1)^{A-i} - S^{A-i} ) )^b \times ( S^i \times (S+1)^{a-i} )^{B-b}$

有时间再解释把...

 

csp-s模拟测试59(10.4)「Reverse」(set)·「Silhouette」(容斥)

标签:序列   解释   迭代器   lin   deepin   模拟   最大值   枚举   最大   

原文地址:https://www.cnblogs.com/Wwb123/p/11623422.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!