摘要: 题目大意:有两个帮派,命令D a b表示a,b两人不在同一个帮派里,动态询问两个人是不是在同一个帮派。并查集。d[x]=0 or 1 表示x是否与根节点在同一帮派。碰到D a b 就合并,同时d[fa]:=(d[a]+d[b]+1) mod 2.路径压缩的时候维护一下就好了,方法如下。1 function find(x:longint):longint;2 var fa:longint;3 begin4 fa:=f[x];5 if f[x]=0 then exit(x);6 f[x]:=find(f[x]);7 d[x]:=(d[x]+d[fa])mod... 阅读全文
posted @ 2013-11-02 10:19 lbz007 阅读(183) 评论(0) 推荐(0) 编辑
Live2D