星期天早上到學校和「llmmkk」以及「Gyan」打球,然后去了機房,發現沒帶 u 盤,就在博客園寫游記了。。。
Day 1
早上做大小巴車去綿陽東辰,「人形魔芋」給我看了些【數據刪除】的東西,並問我要不要,然后發現我手機上的【數據刪除】不可用,只好作罷。
中午吃飯感覺沒吃飽其實是因為我大部分時間在上廁所,然后去車上休息了一會就進考場力。
坐我旁邊的好像都是初中生,左邊第二個是「WzhDnwzWzh」。開考前是不准動鍵盤的,就開了下虛擬機,然后看了下電腦配置發現是 i7-10700K,驚了。綿陽東辰還是挺良心的,監考老師說有一個高版本 Dev-C++ 在硬盤里,可以卸載舊版本然后裝新版本。
點開安裝包就去看題面了,跳着看了看發現有一道構造,突然想起某「CS」昨天在洛谷上的發言,感覺他很不可信。
A 廊橋分配
然后就感覺第一題沒讀懂???只好重頭開始仔細看第一題。看完后感覺挺可做的,又不是很可做。另外「因此不存在兩架飛機同時抵達的情況」,那存在兩架飛機同時起飛嗎?你倒是說清楚啊。。。不過因為「機場只有一條跑道」,我就假定時間點都是不同的,繼續看題了(后來發現這一點居然寫在最后的數據范圍里。。。)。這一點我甚至問了監考老師,不過他說不回答任何問題,下次還是看仔細點。。。
然后就是排序一下,離散化一下,研究了樣例一下,發現只要給廊橋帶上一個編號,算出每個飛機能去的編號最小的廊橋(反正只要能去,去哪個無所謂(contributed by 「fanypcd」)),並給該廊橋 ++cnt,最后做一遍前綴和,就知道有 k 個廊橋情況下能停多少飛機了。反正這個思路就挺大眾的。
那當前飛機能去的廊橋,顯然是廊橋上之前停的飛機已經走了的廊橋。所以用一個優先隊列 \(l_1\) 存這些「空的廊橋」,再用一個有限隊列 \(l_2\) 存「有飛機的廊橋」。\(l_2\) 按飛機離開的時間從小到大排序,\(l_1\) 按廊橋編號從小到大排序。對於每一個飛機,把 \(l_2\) 里飛機離開時間小於當前飛機起飛時間的廊橋彈到 \(l_1\) 里。然后從 \(l_1\) 里取最小的廊橋就是當前飛機能去的最小的廊橋。
此時離開考已有 80 min。
B 括號序列
看了第一句差點噴血出來,被「小 c」切掉的題我都沒有思路。
繼續看題,研究了一下數據范圍和括號序列的性質,應該是區間 DP。感覺沒啥大問題就開碼了,開始了整場比賽的崩壞。。。
用了一會時間研究如何把 \(O(n^4)\) 優化到 \(O(n^3)\),其實就是對於 ASB
這種轉移做一個后綴和,把 *
個數不同的情況加起來。然后 A 的右端點每移動一下,就處理一下后綴和。
寫到一個多小時基本上寫完了,這個時候已經很慌,因為時間花的太久了。本來第一題就亂撞了一會才撞出來,這個題又感覺很懸。然后測了第二個樣例,發現是錯噠。意識到對於 AB
這種轉移,雖然 A
和 B
可能不同,但 AB
可能相同,這就導致了重復的計算。
想了一會沒想出來如何做,以為只計算第一個產生貢獻的 AB
即可,但這也是錯的,只好痛心去做 C 題。
這個時候就感覺萬念俱灰了,B 題甚至不知道暴力如何判括號序列的正確性,想的「正解」還差一點,但數據一大出錯概率就急劇上升,可能只有 \([0,5]\) 分。
。
在今天(2021/10/24,Day 2)早上起床時模模糊糊想到了方法。設經過至少一次 AB
或 ASB
轉移方式的方案為 \(f_1\),而只經過 (AS)
,(SA)
,(A)
方式的方案為 \(f_2\),那么 \(f_1+f_2\) 就是不重復的超級串數量。
可以看這篇題解,歸納的更加清晰,為什么大家都這么強啊。。。
C 回文
直接打暴力,發現是 \(O(2^{2n})\),准備優化到 \(O(2^n\times n)\),但考場上寫的程序死活有問題,慌得一比。發現 C 題亂搞明顯更可做,后悔了。。。
就這樣渡過了最后的半個小時。D 題棄療力。
晚上沒有飯,就在車上吃了點東西,看到「神」發了 QQ 空間。「前三題比去年簡單」,Strike 1;問了下她第二題怎么避免重復的,她說開了 5 個 DP 數組分別存各種情況,Strike 2;然后她在 QQ 空間里評論「大佬們不要再諷刺我了/kk」,Stirke 3,HRJ had dead。
Day 2
起床和「llmmkk」交流了一下 B題做法,發現他和我的想法一模一樣,用的避免重復的方法也是假的,第二個樣例也輸出 28,我艹。
被「Gyan」叫去打球,本來擔心不放我進學校,然后發現大門直接開着的,我穿着校服進去管都不管。拿着個球拍感覺好重,揮不動,我諤諤。
到了機房,發現洛谷上一車人過了 ABCD 題,感覺一等線至少 140,無望了!
晚上 10 點,代碼出了。去洛谷測了下,第二題爆零,128 分。
Day 3
有道小圖靈出了估分,發現 1= 線比想象的低,然后用 lemon 跑了下全省的其實差不多,感覺好一點了。