摘要: 【算法】可持久化线段树(主席树)+启发式合并+LCA 【题意】给定森林,每次询问u,v路径上的第k小,或给u,v连边(保证森林),n<=8*10^4。 【题解】 区间第k小:离散化,在上一个位置的基础上建可持久化权值线段树,每次比较左子树和k并找到第一个大于等于k的位置。 树上第k小:每个点上其父亲 阅读全文
posted @ 2017-09-03 23:08 ONION_CYC 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 【算法】主席树||离线+树状数组 【题解】 主席树经典应用:找区间不同的数字个数。 做法:记录每个数上一次出现的位置last[i],对last建权值线段树,对于区间询问last[i]<L的数字个数。 注意权值范围是last[i],也即0~n。 注意x=0时返回,否则可能c<0就完了。 #includ 阅读全文
posted @ 2017-09-03 21:43 ONION_CYC 阅读(276) 评论(0) 推荐(0) 编辑