并查集
sillyf
这个作者很懒,什么都没留下…
展开
-
51nod 1515 明辨是非[并查集][set]
对于每一个数分别维护并查集和一个集合 并查集用于判断相等关系 集合用于判断不等关系:每个数的集合中原来为空,如果两个数 x,yx,y 被要求不等就将它们互相插入到集合中,然后这个可以用set实现,按集合(set)中的元素个数大小进行合并(按秩合并) 若p=1p=1,先判断是否在同一个并查集中,若不在则到set中找 若p=0p=0,先判断是否在同一个并查集中,若不在互相插入#include<c原创 2017-10-15 20:23:02 · 338 阅读 · 0 评论 -
51nod 1204 Parity[并查集]
脑补一个前缀和数组pre 对于给出的[l,r][l,r]的区间和的奇偶性: 若为odd(奇数):转化为pre[r]pre[r]和pre[l−1]pre[l-1]的奇偶性不同 若为even(偶数):转化为pre[r]pre[r]和pre[l−1]pre[l-1]的奇偶性相同 用并查集维护.[1,n][1,n]表示奇偶性相同,[n+1,2∗n][n+1,2 \ast n]表示奇偶性不同#incl原创 2017-10-26 21:04:40 · 438 阅读 · 0 评论