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

jzoj6152

时间:2020-05-28 16:49:27      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:最小   生成   zoj   nlog   i+1   没有   长度   n+2   for   

题意

给定\(n\)长度序列\(a_i\),对于一个平方串\([i,i+len-1][i+len,i+2len-1]\)\(\forall x\in[i,i+len-1]\),存在边\((i,i+len,w_{len})\)
求最小生成森林

做法

插点求出平方串,相当于\([l,r]\)\([l+len,r+len]\)\(w_{len}\)
这个可以转化成\([l,l+2^i-1]\)\([l+len,l+len+2^i-1]\)连边,\([r-2^i+1,r]\)\([r+len-2^i-1,r+len]\)连边
可以维护\(logn\)个并查集第\(i\)个维护\([x,x+2^i-1]\)\([y,y+2^i-1]\)是否有连边

当在做\([x,x+2^i-1]\)\([y,y+2^i-1]\)连边的时候,可以查询第\(i\)个并查集\(x,y\)是否有连边

  • 有则退出
  • 没有
    \(x,y\)在该并查集连起来
    \(i=0\)则统计贡献
    否则递归\([x,x+2^{i-1}-1]\)\([y,y+2^{i-1}-1]\)\([x+2^{i-1},x+2^{i}-1]\)\([y+2^{i-1},y+2^i-1]\)连边

\(O(nlogn\alpha(n))\)

jzoj6152

标签:最小   生成   zoj   nlog   i+1   没有   长度   n+2   for   

原文地址:https://www.cnblogs.com/Grice/p/12981418.html

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