NOIP模擬系列 BZOJ4668 冷戰

2021-09-29 14:38:18 字數 1425 閱讀 4408

這道題我們整個機房討論將近半個小時沒有出結果,演算法導論都翻了。

突然,有乙個同學用十分暴力的並查集a了,於是大家興奮地都打了暴力。

5我一開始想暴力,直接建樹乙個乙個跳,覺得肯定不對。便覺得沒有頭緒。後來有一位同學a了,還真是這麼暴力!

什麼,你說如何快速查詢乙個點到lca的最後乙個被新增的邊?

打lct?orz,反正我不打。我們就這麼暴力的乙個乙個跳!

複雜度如何保證?我們可以合併的時候按秩合併,這樣深度只有log

(n)log(n)

log(n)

,暴力跳的時間複雜度自然就只有o(l

og(n

))o(log(n))

o(log(

n))了!想想就很酷。

蒟蒻**供嘲諷

#include

using

namespace std;

const

int n=

500010

;int fa[n]

, v[n]

, depth[n]

, n, m, cnt;

bool vis[n]

;int

find

(int x,

bool r)

inline

intmax

(int a,

int b)

inline

void

swap

(int

&a,int

&b)inline

intsolve

(int x,

int y)

int lca=y, ans=0;

while

(!vis[lca]

) ans=

max(ans, v[lca]

), lca=fa[lca]

;find

(x,0);

while

(x!=lca) ans=

max(ans, v[x]

), x=fa[x]

;return ans;

}inline

void

merge

(int x,

int y,

int cnt)

intmain()

}

noip模擬賽 bzoj2932旅行

題解 話說這道題啊,是真的坑,正解不難,但是想歪是很簡單的,在常規的貪心不行的時候,本人就想到了dp,自我感覺 非常有道理,方程式也寫了出來,結果莫名wa了50 的資料,不懂,聽大牛說是因為不滿足最優子結構。表示 寫dp的時候從來沒有關注過這個東西 先說dp吧,dp i j 表示前i個人,有j個人在...

NOIP模擬 BZOJ 2143 飛飛俠

飛飛國是乙個傳說中的國度,國家的居民叫做飛飛俠。飛飛國是乙個 n m 的矩形方陣,每個格仔代表乙個街區。然而飛飛國是沒有交通工具的。飛飛俠完全靠地面的彈射裝置來移動。每個街區都裝有彈射裝置。使用彈射裝置是需要支付一定費用的。而且每個彈射裝置都有自己的彈射能力。我們設第i行第j列的彈射裝置有 ai j...

noip模擬賽 bzoj2237龍珠雷達

題解 一道dp題,恩,沒錯,非常好,時間複雜度o n m m 爆了,恩,沒錯,非常好,看了是要優化了 讓我看看,恩,不是線段樹優化,不是斜率優化,不是四邊形不等式優化,what?那是什麼?行,我寫暴力 t2打成t1,原本70分 成功爆0 所以說,我,這個,i,應該忘記了,除了這些高大上的優化以外,還...