摘要:
P2486 [SDOI2011]染色 分析: 颜色段数用线段树维护,记录最左端颜色与最右端颜色,每一次合并的时候,如果中间颜色有重叠,就将段数--。 链剖查询的时候注意两条链端点颜色相同的情况。 因为跳链是一个交替的过程,记录一下左右链跳完之后跳到的颜色是哪一种:ans1对应左边的x,ans2对应右 阅读全文
摘要:
题目: 题目: 我怎么也不会想到,这道题的正解会如此的暴力。。。 一开始我的做法是开一个桶记录一下每种元素的出现次数,每次查找的时候,枚举一个元素x,查询大于等于x+c的个数。 这样是n*m的,但是其实不同的元素个数只有sqrt(n)个,因为:1+2+3+……x=n,x最多为sqrt(n) 所以用一 阅读全文
摘要:
题目: 分析: 定义dp[ i ] [ j ]为原序列中第i个元素,在归并后放在了j这个位置的概率 最后的答案是概率乘上每一个可能的位置。 考虑怎么转移: 在归并排序中,遇到相同的就将对应的区间提出来,模拟两两相同元素比较的过程,统计贡献。 对于上一层的一个元素k,它通过一堆相同的比较后,放入位置 阅读全文