倏然而逝還是從就無法出現的片段何時能被淚水盡

暗蓝色的星空發表於2024-03-22

打打 JOISC 。

Day 1

T1 看起來和之前一道模擬賽題很像,推了推發現還是區間單調棧,因為可以離線所以寫個掃描線就好了。(因為一個地方寫掛調了好久)。

T2 和 T3 看起來都不是很簡單,就先想了想 T2,發現建出最短路樹後,把 DFS 序和 對應區間傳過去,可以有 \(50\) 分。
但是感覺沒有用到區間不交的性質,所以後來又想到直接把整顆虛樹的括號序傳過去,因為最多隻有 \(31\) 個區間,所以不超過 \(62 bit\) ,然後再傳每個邊對應的括號,最後把 DFS 序傳過去,發現剛好比要求的多了 \(65 bit\) ,算了一下有 \(93\) 分。
感覺可多了,就開始寫,但是有點難寫,通訊題還不好調,寫完就剩一個小時了,又花了半個小時調出來,好在是拿到了。
然後開始寫 T3 暴力,感覺隨機排列至少能過 \(n\leq10\) 和第一個包就寫的隨機,但是寫完是 \(0\) 分,又看了一遍發現是要求嚴格小於,想了想改了改,還是 \(0\) 分,發現好像確實不太對,隨機排列好像不能直接構造樹,好像還要寫個拓撲啥的(此時還剩 \(5\) min),似乎還挺麻煩,到最後也沒寫完。

考了一半才知道有榜,然後發現 T3 過了一車,虧麻了,應該先都想想的。

後來又想了想 T2 怎麼砍掉那 \(64bit\),感覺應該是把括號序用 THUSC2021 T4 的那種方法壓縮,然後把 DFS 序改成康擴充開,沒細算。

Day 2

先看 T1,看起來很可做,推了推發現了關鍵性質每個人最終一定是在一個關鍵點周圍反覆橫跳。

然後不會了,決定先看看別的題。發現 T2 是個通訊,直接跳

看 T3,先二分答案,然後轉成找一個區間使得區間內的點和 B 完美匹配,區間外的點和 C 有完美匹配,並且發現此題和 JOISC22 螞蟻與方糖的匹配形式一模一樣,套用那題做法就可以做到 \(O(n\log^2 n)\),~~雖然是 \(10^6\) 但是萬一能過呢 ~~,結果喜提暴力分。

不過也正常,畢竟一點特殊性質都沒用到,接下來的一個小時就一直想怎麼最佳化那題的 Hall 定理做法,然後一直不知道特殊性質有啥用。然後過了一會突然意識到根本不用Hall 定理,把兩個序列排序之後順次匹配就是最優的,但是好像還是做不了。看了眼 Sub 4,發現此時陣列的形態一定是一個字尾是固定的,字首和另一個字尾匹配,然後還是不會。過了一會又突然注意到每個點匹配的是一個區間,並且最終的排名只和區間左端點有關,那麼可以解出一個關於左端點的限制區間,把所有限制區間取交就可以 \(O(1)\) 判斷,咋突然想到了WCT2,然後拿到了 \(67\) 分。然後考慮從 Sub 4 擴充到正解,發現最終排名還是一個關於左端點的單調函式,那麼還是可以解出一個區間,不過另一半再分討有些麻煩,所以捨棄了常數直接封裝起來,不過還是有億些討論,不過還是過了。

此時還剩不到一小時,感覺自己差不多會一個 \(O(n^2)\) 做法,有 \(36\),然後就準備寫,寫了一半突然感覺假了,有種情況不太對。害怕時間不夠就去寫暴力了,寫完前兩個包就沒啥時間了。

賽後和別人討論一下發現 T1 的 \(O(n^2)\) 做法沒啥問題,然後只需要維護凸殼上的點就可以過了,感覺之前沒見過這樣的東西,聽起來也不太好寫,明天寫寫看吧。

相關文章