2019牛客多校 Round8

2022-05-09 01:24:08 字數 1213 閱讀 5484

solved:3

rank:261

e explorer (線段樹)

題意:n個點 m條邊 每條邊只有身高l,r內的人可以穿過 問有幾種身高可以從1走到n

題解:把l,r離散化後(左閉右開) 線段樹葉子節點維護區間  然後從線段樹根節點dfs下去

這個區間能不能產生貢獻的關鍵在於1和n的聯通 所以用可撤銷的按秩並查集動態維護資訊

回溯的時候要撤掉並查集 不能對其他子區間產生影響

#include using

namespace

std;

const

int maxn = 1e5 + 5

;int

n, m, cnt, ans;

int u[maxn], v[maxn], b[maxn << 1

];int

l[maxn], r[maxn];

intfa[maxn], zhi[maxn];

vector

g[maxn << 3

];int find(int

x) void update(int ql, int qr, int x, int l, int r, int

rt)

int mid = l + r >> 1

;

if(ql <= mid) update(ql, qr, x, l, mid, rt << 1

);

if(qr > mid) update(ql, qr, x, mid + 1, r, rt << 1 | 1);}

void dfs(int l, int r, int

rt)

if(find(1) ==find(n))

else

if(l

for(int i = tmp.size() - 1; i >= 0; i--)

}int

main()

sort(b + 1, b + 1 +cnt);

cnt = unique(b + 1, b + 1 + cnt) - (b + 1

);

for(int i = 1; i <= m; i++)

dfs(

1, cnt, 1

); printf(

"%d\n

", ans);

return0;

}

e explorer

2019牛客多校 Round3

solved 3 rank 105 治哥出題了 我感動哭了 a graph game 分塊 題意 1e5個點 2e5條邊 s x 表示與x點直接相鄰的點集合 有兩種操作 1種將按輸入順序的邊第l條到第r條邊翻轉 連線 切斷 切斷 鏈結 還有一種詢問 s x 與s y 是否相等 題解 題解說 可以給每...

NOIP四校聯訓Round8小結

這次考得一般。第一題a了,不說了。第二題主要是抓到乙個性質,然後也a了。主要問題在時間分配上面,一二題的ac花費了我不少時間和精力,我第三題沒怎麼想直接輸出 1了。回來想想,不長,思路就是二分 貪心,其實還是可以一試。主要是沒時間了。第一題我求穩寫了3個資料範圍的 第二題找性質也花了不少時間。因為到...

四校聯訓Round8心得體會

考得不是很好。第三題沒有寫出來。第一題組合數學,又是到了最後乙個小時才想出來,還好最先寫了80分的dp 不過當我想出來怎麼做的時候,卻發現取模的不是乙個質數,然後我沒想到怎麼辦就放棄了。正解應該是勒讓德定力分解質因數加快速冪。第二題相當於暴力的神題吧。當且僅當每一行有一半的燈是亮著的才能把我的 卡到...