2024年第九屆CCCC團體程式設計天梯賽 遊記

空気力学の詩發表於2024-04-21

Preface

第一次打4C,不得不說中國大學生膀胱容量競賽名不虛傳

下午一點半開始的比賽結果早上八點過就要起床去坐校車,結果起晚了早飯都沒吃就被迫雨中衝刺了

到了美麗的成信大後就開始消磨時間,和祁神來了把激情軍旗,直接引來集訓隊十幾人觀戰

午飯竟然有中式自助,我直接狠狠炫了兩盤,結果感覺吃的有點多了有點昏昏欲睡

而且由於害怕比賽的時候忍不住上廁所一個早上都沒怎麼喝水,中午直接爽造了好幾杯飲料,這下感覺前功盡棄了

吃完飯後又在考點門口磨蹭了好久才可以進場,好傢伙結果剛坐下來才發現比賽已經開始了,遂開始評鑑4C的shit題


Duration

反正我也沒有搶後面一血的念頭,遂從前往後慢慢摸魚開題

L1前面幾個題都是閱讀題面難度大於寫程式碼難度,靠著連猜帶蒙勉強應付了過去

然後就做到了臭名昭著的貓娘題,剛開始Rush的version過不了最後一個樣例,對著題面看了半天才猜出應該是按順序處理每個詞在前

然後一交發現WA了兩個點,看了眼程式碼感覺也挺正常的,想不到出錯的點

後面冷靜思考了下,發現題面讀入的敏感詞裡可能就有<censored>,或者因為替換了後拼湊出了新的違禁詞

然後就在模擬的時候順便維護了下每個位置是否是被替換了的,雖然中間寫了一堆唐氏錯誤,改一個地方交一發,最後也是挺快的過了這個題

然後後面一路沖沖衝寫到了另一個臭名昭著的字串處理題,但因為我當時想著偷懶直接寫了map <string,vector <string>>,結果直接光速寫完一發過了,就沒在這題上浪費太多時間

L2的最後那個一眼搜尋,剛開始很套路地寫了先搜出所有合法的行狀態,然後一邊搜一邊剪枝的做法

交上去發現只TLE了一個點,於是盲猜肯定是9 4這種情況,遂本地開了個O2然後開始大力跑,結果跑了20s左右馬上就跑出來了,加上去也過了

L3-1也是個頂真題,光速寫完過了後發現時間還有90min左右,然後此時看了眼題面列表發現後面兩個題都沒人過(其實是L3-2資料出鍋了),就不著急先把兩個題都看了遍

L3-3是個經典的九條可憐題,而且看上去是個幾何,遂先扔了滾去寫L3-2了

L3-2有個很顯然的二分策略,但要找到最小的合法區間感覺要找某種資料結構來維護下左/右兩側到當前位置的距離

而且在倉庫的位置移動時,左/右的距離會有+1/-1的變化,可以拿一個變數維護下,然後大力寫線段樹維護區間和

但實際寫的時候就發現由於會有兩邊可用長度不等長的情況,而且計算貢獻是要查詢的東西也很抽象,搞了半天一直寫不過樣例就直接紅溫了

後面一想寫不出就索性開擺,直接先Rush了個暴力交上去騙點分,好傢伙結果發現直接21pts到手,這還寫個勾八正解啊,直接扔了不管了去看L3-3

L3-3有個很顯然的\(O(n^3\log \frac{1}{EPS})\)的做法,大致思路就是先二分答案\(r\),然後用一個二元組\((a,b)\)表示當前機器人抓出了哪兩個點

狀態轉移的時候就考慮列舉走到的點\(c\),現在其實就等價於判斷以\(a,b,c\)為圓心,\(r\)為半徑的三個圓是否有交

但由於我在平時訓練中從來不寫幾何,幾何水平僅限於口胡了,一看時間只有半個小時了感覺也寫不出來這玩意了,遂開始擺爛看榜

結果發現axs這道題有1pts,我就開始想是不是有什麼好寫的特殊Case可以騙分

後面直接擺爛寫了個找兩點間距離最大值然後除以二輸出的做法,沒想到交上去真水到了1pts(後面知道這個點是\(n=3\)的情況,那確實怎麼寫都能過)

剩下10min就開始無聊刷榜了,發現這場前面兩道字串處理原來腐乳了一大波人,可能我們學校好多人都是前面被搞紅溫了/時間耗完了,導致後面L3-2送的21pts沒寫,然後就爆炸了

最後電專在有兩個隊出征WF的條件下勉強打了個Rank6,還好保住了高校的金獎沒有顏面盡失

同時由於運氣好被分進了一隊,因此也混了個團體Rank6,而且沒拖後腿不當戰犯就算win

最後今年個人的國一線248也是得以混上了,又狠狠地水了綜測加分,贏


Postscript

由於校車要六點才回去因此順便再嫖了頓晚飯,但由於不是自助了也沒怎麼吃飽,悻悻而歸了屬於是

總而言之雖然4C打起來很沒意思,基本就是在寫傻逼題/構式題/寫暴力的路上,但能水獎項的比賽就是好比賽,就希望明年能人性化一點放過孩子的膀胱吧

相關文章