2018 多校聯合訓練 7

2022-05-27 20:24:08 字數 772 閱讀 3127

problem a

比賽的時候沒主要搞這個題(因為不怎麼會)

其實就是類似做dij的乙個過程,記錄3個值:當前點編號,到當前點的代價,當前點的那條邊的顏色。

然後遍歷一遍就可以了。

problem b

本來比賽的時候想到不同的字母之間的差值肯定不能作為迴圈節。

然後我就上了fft,因為做過差不多的題。

但是wa了半場之後棄了。

其實我又想偏了,直接列舉迴圈節然後乙個個判斷過來,

時間複雜度是$o(nlogn)$的。

就是觀察每個迴圈節的時候做到$o(1)$就行了。

具體細節的話就是迴圈節長度至少為$3$

a不能在倒數兩個位置,c不能在前兩個位置。

b不能在開頭也不能在結尾。

出現過的必須滿足abc這樣的順序

然後符合上述條件的話就可以作為迴圈節。

然後更新答案就好了。

problem c

problem d

problem e

problem f

problem g

problem h

problem i

環套樹,環上用個樹狀陣列搞搞。

其他的東西樹鏈剖分。

這個如此簡單的題我居然還有乙個多小時的時候才看到

還沒寫出來

唉。problem j

比賽的時候不會lct。其實就差一步了。

(另外我沒做過彈飛綿羊,我只是聽說過這個題)

problem k

problem l

2018多校聯合訓練2

打的慘不忍睹,就過了3題 1004 水題,直接輸出yes就過了,solved by lyy include using namespace std define ll long long int n int main return 0 1010 逆序對 min x,y 隊友一開始wa了4發,給了他模...

2018多校聯合訓練4

過了6題,第一次進入前100名 1012 直接從1走到n solved by wyq include includeint a 100005 int reabs int x int main return 0 1004 和出題人心有靈犀2333 solved by lyy include using...

2018 多校聯合訓練 1

problem a 首先解方程 frac frac frac n frac frac frac 1 如果 a,b,c 都必須為正整數,那麼令 a b c 那麼 a 3 所以 2 a 3 a 2 的時候 b 3,c 6,或者 b 4,c 4 顯然前者好像比較垃圾,那麼捨去 a 3 的時候 frac f...