為什麼這都是許可權題???,洛谷真良心
看到這道題,感覺就是主席樹/整體二分之類的東西
(因為要求第
k 大)
但是,讀完題目之後,我們發現路徑之間的包含關係很不好搞
那麼,我們來畫畫圖
這是第一種情況,lc
a不是u,
v u,
v 分別是乙個盤子的兩端
如果被乙個水果完全覆蓋,
那麼,這個水果的兩端分別在u,
v 的子樹中 設d
fn[u
] 是
u 的df
s序 lo
w[u]
是子樹中最大的df
n 那麼,設水果兩端分別為a,
b df
n[u]
≤dfn
[a]≤
low[
u],d
fn[v
]≤df
n[b]
≤low
[v]
再看第二種情況
也就是說,此時
u 是lc
a那麼,乙個點還是在
v 的子樹內
另乙個點在這條鏈的子樹外 設u
,v鏈上的u
的兒子為
w那麼,水果的乙個點一定不在
w 的子樹內
也就是說: df
n[v]
≤dfn
[a]≤
low[
v]df
n[b]
n[w]
orlo
w[w]
n[b]
好的 現在知道了這些,有什麼用???
如果我們把盤子的df
n[u]
,dfn
[v],
low[
u],l
ow[v
] 看成兩個點
組成了乙個矩形
那麼,水果的df
n[a]
,dfn
[b] 就是乙個點
所以,乙個水果如果被盤子所完全覆蓋
那麼,也就是水果組成的點被盤子組成的矩形所包含
所以整體二分+掃瞄線求解就很容易做了
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
#define ll long long
#define rg register
#define max 50000
inline
int read()
struct edgee[max<<1];
int h[max],cnt=1;
inline
void add(int u,int v);h[u]=cnt++;}
int p[18][max],dep[max];
int n,p,q,dfn[max],tim,low[max],tot;
struct mtt[max<<2];
struct frq[max],q1[max],q2[max];
struct lilk[max];
bool
operator
int lca(int u,int v,int opt)
int c[max],ans[max];
inline
int lowbit(int x)
inline
void modify(int x,int w)
inline
int getsum(int x)
void work(int l,int r,int l,int r)
int mid=(l+r)>>1,t1=0,t2=0,cnt=0;
for(int i=l;i<=mid;++i)
;lk[++cnt]=(li);
}sort(&lk[1],&lk[cnt+1]);
int pos=1;
for(int i=l;i<=r;++i)
for(int i=1;i1,lk[i].v);
for(int i=1;i<=t1;++i)q[l+i-1]=q1[i];
for(int i=1;i<=t2;++i)q[l+t1-1+i]=q2[i];
work(l,l+t1-1,l,mid);
work(l+t1,r,mid+1,r);
}int main()
dfs(1,0);
for(int i=1;i<=p;++i)
;else
;if(low[d]!=n)t[++tot]=(mt);}}
for(int i=1;i<=q;++i);}
sort(&t[1],&t[tot+1]);sort(&q[1],&q[q+1]);
work(1,q,1,tot);
for(int i=1;i<=q;++i)printf("%d\n",ans[i]);
return
0;}
接水果 fruit 整體二分 掃瞄線
題目描述 風見幽香非常喜歡玩乙個叫做 osu 的遊戲,其中她最喜歡玩的模式就是接水果。由於她已經 dt fc 了 the big black,她覺得這個遊戲太簡單了,於是發明了乙個更加難的版本。首先有乙個地圖,是一棵由 n 個頂點 n 1 條邊組成的樹 例如圖 1 給出的樹包含 8 個頂點 7 條邊...
luogu3242 接水果 整體二分 樹狀陣列
考慮整體二分,問題就變成了每個 水果 路徑有多少個滿足條件 權值 的 盤子 子路徑 考慮乙個盤子 a,b 表示兩端點 不妨設dfn a 1.如果a是b的祖先,則u在 a的在 b,a 鏈上的孩子 這個子樹外,v在b子樹內 2.否則,u在a的子樹內,v在b的子樹內 那麼把乙個水果 a,b 看成是乙個二維...
BZOJ 2527 Meteors(整體二分)
description 有n個國家和m個空間站,每個空間站都屬於乙個國家,乙個國家可以有多個空間站,所有空間站按照順序形成乙個環,也就是說,m號空間站和1號空間站相鄰。現在,將會有k場流星雨降臨,每一場流星雨都會給區間 li,ri 內的每個空間站帶來ai單位的隕石,每個國家都有乙個收集隕石的目標pi...