BZOJ 2564 水管局長加強版

2021-09-22 09:55:31 字數 2729 閱讀 9490

給出乙個n

nn個點m

mm條邊的無向圖,每個詢問會讓你刪除一條x,y

x,yx,

y的邊或者是詢問你x,y

x,yx,

y間路徑最大值的最小值。

n ,q

≤105

,m≤1

06,l

imit

:2500ms

n,q\leq 10^5,m\leq10^6,limit:2500ms

n,q≤10

5,m≤

106,

limi

t:25

00ms

此題是加強版。lct會不會被卡到掛啊?

但是我並沒有寫加強版(霧

sol:

實際上對於原版來說不同的是點的數量,也就是說你需要用個map之類的東西維護一下,

而不是直接套鄰接矩陣。

對於刪邊我們把它變成加邊,就成了增量生成樹問題。

然後就是lct

lctlc

t維護mst

mstms

t的板子題了:對於點x,y

x,yx,

y用lc

tlct

lct拉出路徑上的最大值,

和當前新加的邊比較一下是不是要斷掉。

我們選擇把邊權轉點權,方法是兩個點拆成三個,中間乙個虛點賦值。

資料結構題好久沒有在沒拍的情況下1a了。

#include

#include

#include

#define debug printf("gg\n")

const

int n =

3e5+7;

int s[n]

, v[n]

;inline

intmax

(int a,

int b)

inline

intckmax

(int a,

int b)

struct lct

inline

void

pushup

(int x)

inline

void

resv

(int x)

inline

intnort

(int x)

inline

void

rotate

(int x)

inline

void

pushdown

(int x)

}inline

void

splay

(int x)

}inline

void

access

(int x)

inline

void

bert

(int x)

inline

intfindrt

(int x)

inline

void

split

(int x,

int y)

inline

intlink

(int x,

int y)

inline

intcut

(int x,

int y)

}t;int n, m, q, tot;

const

int upnode =

3e3+7;

struct edge e[n*2]

;int cnode[n][2

], pcnt, map[upnode]

[upnode]

;struct question q[n*2]

;int ff[n]

, size[n]

;inline

intfind

(int x)

inline

intunion

(int x,

int y)

struct res eres[n*2]

;inline

intcmp

(res a, res b)

int orgi[n*2]

;void

init()

for(

int i =

1; i <= q; i++

) std ::

sort

(eres +

1, eres + m +

1, cmp)

;int ptot =0;

for(

int i =

1; i <= m; i++

)for

(int i =

1; i <= m; i++)if

(map[e[i *2-

1].from]

[e[i *2]

.to]

) map[e[i *2-

1].from]

[e[i *2]

.to]

= i + n;

}int stack[n]

;int opts;

void

solve()

else

}while

(opts) printf (

"%d\n"

, stack[opts--])

;}intmain()

WC2006 水管局長資料加強版

sc省my市有著龐大的地下水管網路,嘟嘟是my市的水管局長 就是管水管的啦 嘟嘟作為水管局長的工作就是 每天供水公司可能要將一定量的水從x處送往y處,嘟嘟需要為供水公司找到一條從a至b的水管的路徑,接著通過資訊化的控制中心通知路徑上的水管進入準備送水狀態,等到路徑上每一條水管都準備好了,供水公司就可...

BZOJ WC2006 水管局長資料加強版

time limit 25 sec memory limit 128 mb submit 4842 solved 1482 submit status discuss sc省my市有著龐大的地下水管網路,嘟嘟是my市的水管局長 就是管水管的啦 嘟嘟作為水管局長的工作就是 每天供水公司可能要將一定量的...

BZOJ4140 共點圓加強版

假設當前詢問點為 a,b 那麼它在乙個以 x,y 為圓心的圓裡需要滿足 x a 2 y b 2 leq x 2 y 2 2ax 2by geq a 2 b 2 等價於詢問所有圓心與 2a,2b 的點積的最小值是否小於 a 2 b 2 考慮將修改操作二進位制分組,分成 o log n 段連續的修改區間...