今晚 $2012$ 的初賽題作到心態爆炸,選擇考計算機基礎知識一臉懵逼,填空和後面一道大模擬直接跳過,最後竟然還得了 $60$ 多分。算法
昨天作了 $NOIP2016$ $day1$,本來應該是 $2s$ 時限的 $T2$ 老師沒注意只開了 $1s$,而後就被卡掉了 $5$ 分,今天作 $day2$ 時又被老掉牙的 $Cena$ 給坑掉了$95$,心態爆炸。數組
(晚上)瀏覽器
一邊聽 $y$ 總講組合數學,一邊臨時惡補初賽知識點,感受今晚學到的東西(初賽)比這一個月來總結的還要多不少。果真啊,人在面對險境時總能爆發出難以想象的力量。網絡
艹暈車,到考試地點後腦子裏面一片混沌,早上剛背的知識點全忘光了。數據結構
不得不說單選仍是挺水的,結果後面閱讀和完形直接原地爆炸螺旋昇天,送上來的坑點一個都沒踩漏,還有最後一道狀壓推了接近一個小時沒看懂。工具
對臉懵逼。學習
下午用網上流傳的問卷星測了一下,竟然有 $83.5$,感受應該是穩了吧。。優化
九校聯考涼心模擬 $\text{day2}$。ui
$\text{T1}$ 就是個簡單指望 $\text{dp}$,結果死活推不出來,白嫖了 $50$ 分的蒟蒻遞推。spa
$\text{T2}$ 神奇的數論推結論而後上 $\text{CRT}$,也不會,碼了個暴力。
$\text{T3}$ 一眼 $\text{LCT}$ 板子,但不會寫,因而上了個暴力+離線樹上倍增。
指望得分:$50+50+30=130$ 。
實際得分:$50+20+30=100$,$\text{T2}$ 卡常沒卡過。
(好像只有我一我的上了 $100$ 哎)
$\text{Trie}$ 樹巨佬 $\text{lsy}$ 又一次用神奇解法吊打了 $\text{std}$,惋惜的是考場上沒調出來。
我真的以爲個人寫法很是簡單,瞬間就想出來了,並且代碼也很好寫,不就是個啓發式合併加樹上懶標記維護動態倍增 $\text{lca}$ 嘛。—— $\text{lsy}$
我好菜啊。
離比賽已經不足 $20$ 天了,回想起去年的毒瘤題,感受如今本身去作的話,會作的依然會作,不會作的仍是不會。
而聽說今年的題會更毒瘤。
唉,等聯賽後就直接 $\text{AFO}$ 了。
大部分題均可以用 $Trie$ 樹搞。—— $\text{lsy}$
$\text{stOrz}$
(電腦E盤被打穿祭)
受機房同桌 $\text{hyj}$ 誘惑,和他一塊兒從不明渠道下了個破解版的繪圖軟件 $\text{AxGlyph}$,打開看了看感受還不錯。。。
次日早上,打開瀏覽器提示僵屍網絡,雖然感到很奇怪,但由於老師已經發下了考試題目,因此就專心作題去了。
(離考試結束還有兩個小時)
題目比較水,閒得無聊又打開了這個軟件,驚歎其功能之強大堪比幾何畫板。
(下午)
僵屍網絡又來了,忽然意識到事情可能不太對,詢問老師又無果,只好換了機子。
(第三天)
週末收假回來搗鼓了一下午,最後讓 $360$ 危險衛士出面搞死了數以千計的 $\text{virus.vbs.writebin.a}$ 病毒。
開始計算損失:裝滿了各類軟件的 $E$ 盤被所有打穿;$D$ 盤裏面的學習資料較爲安穩,只有少數幾個 $htm$ 遭了殃;至於 $C$ 盤嘛,教練設置的重啓自動數據還原都救不了,纔剛開機一小會兒就直接全軍覆沒。
漫長的查毒殺毒過程當中,無所不知無所不能的 $zth$ 巨佬帶着一臉 $\text{yin dang}$ 笑容走了過來。
等等,放下那隻病毒!用記事本打開它,來,讓我康康。$\text{emmm...[aoturun]...}$ 原來如此。那個 $\dots$ 你那什麼病毒,給我留一份哈,我放到虛擬機裏跑一下看看
只見他熟練地打開 $cmd$,用文本模式打開了一個受到毒害的 $htm$ 文件,在一長段字符中找到了問題所在,並秀了一波凡人看不懂的操做。
(晚上)
打包的部分病毒樣本(疑似)和一隻可憐的受害者(上面說到的 $htm$)被保存了下來(預測之後將會成爲高級jc的做案工具)。
哎,你說這隻病毒可不能夠娘化呢?——把我給坑慘了的 $\text{hyj}$
把全部學過的板子都挨着敲了一遍。
今天竟然沒有暈車,頓時心情大好。下午在賓館閒着沒事幹看了幾篇論文,不知道會不會派上用途。
第三次來到這座學校,去年的自閉記浮如今了眼前,唉,但願今年不要再翻車了。
(進入考室)
也許是太緊張了,找不到開機鍵???只得求助工做人員,旁邊的小哥一臉詫異地望了我一眼(唔,好尬啊)
開機後迅速碼好頭文件和快讀,看看時間恰好 $8:30$,因而擡頭看大屏幕尋找 $ftp$ 地址 $emm....$ 地址呢?都已經到點了,爲何尚未公佈啊,難道咕咕咕了?
果不其然,當工做人員拿着 $U$ 盤依次插入隔壁小哥的主機時我便明白了一切。
應該要等會兒才公佈發密碼,閒着無聊花幾分鐘敲了個 $LCA$,熟悉了下鍵盤,感受手感還不錯,比學校機房裏那個已經老化了的鍵盤好多了。
$md$ 誰設計的密碼啊,醜死了,輸了無數遍才發現後面竟然有個問號,解壓出來後又只有數據沒有題面,喵了眼隔壁小哥,他彷佛只有題面沒有數據,搞得我差點笑出聲來。
最後在 $rar$ 的準備界面裏把 $pdf$ 強行拖了出來,開始看題。
$T1$ 題面這麼長?難道是大模擬?內心頓時一涼,喵了眼 $T2,T3$,兩個樹論?但 $T3$ 的數據範圍有點不正常。
回過來看 $T1$,反覆琢磨了幾遍題意,除了要開 $ull$ 外,貌似沒啥坑點,就是個蒟蒻小模擬,隨手敲了個遞歸(忽然發現三次大考 $\text{day1 t1}$ 都寫了遞歸 $\text{QAQ}$),爲防位運算爆 $ll$,還專門預處理了一個 $mi$ 數組。但不知道爲何寫掛了,調了一下子發現了個 $\text{SB}$ 錯誤,一發過大樣例,測了下 $64, 2^{64}!-!1$ 的極限數據,貌似沒啥問題(考完才意識到沒有數 $0$ 的位數,但願不要掛),看了看時間 $9:20$,和預估的時間如出一轍,準備開 $T2$。
$emm...$ 鏈的部分給了很是誘人的 $50pt$,果斷開鏈。問題被放到序列上,首先想是否能夠繼承,發現還真能夠,直接 $dp[i]=dp[i-1]+f[i]$($f[i]$ 表示以 $i$ 結尾有多少個合法子串),想到這裏忽然意識到:能夠直接在樹上 $dfs$ 的時候順手就把答案維護了出來。雖然平時寫樹 $dp$ 都是邊寫邊思考,但爲了保險,仍是往深處仔細想了想,彷佛沒什麼問題,開始碼碼碼。。。。
問題是如何獲得 $f$ 數組,一開始寫了個棧,但不太好處理,因而換了種寫法:用 $w[x]$ 表示從 $x$ 到根的路徑上第一個可用的左括號位置,設 $W=w[fa[x]]$ 則有 $f[x]=(W!!!=!0)+f[fa[W]],w[x]=w[fa[W]]$,一發過樣例、中樣例,大樣例崩潰,因爲忘了如何手動開棧,果斷上 $Linux$,順便把 $T1$ 的數據也拷了進去,測了一遍發現全 $A$,看看時間 $10:19$,比預估早了一分鐘。
$T3$ 鏈和菊花加起來有 $60$,先想鏈吧,貌似能夠貪心,保險起見先打爆捜。$10min$ 後,開始了漫長的 $debug$ 之旅($md$ 寫個暴力都能掛),大概半小時後發現輸入和我想的不太同樣,改來改去始終過不了,仔細琢磨了下題面,涌起一股想要把出題人錘一頓的衝動.
此時這條邊所鏈接的兩個結點上的數字將會交換
鬼知道你這裏說的 「數字」 是指點權仍是節點編號啊!!!害我調辣麼久。
過樣例後發現還有 $45min$,想了想菊花沒啥思路,老老實實開鏈。
喵喵喵?
碼了七八十行發現思路有問題,唉,開考以前就在不斷提醒本身要三思然後行,結果仍是太沖動了。
看看時間還剩 $15min$,這時候應該也翻不出什麼風浪來了,因而又把 $T1,T2$ 撈出來看了看,放到 $\text{Linux}$ 下再測了兩遍。
$12:00$,收拾好筆和身份證準備走人,喵喵喵?爲何還不結束啊?難道是要延時?工做人員都不說一下的嗎?早知道就應該把 $T3$ 再好好想一想了。。。
找了找開始界面發現竟然沒有掃雷,差評。
出考場後聽學校裏一個拿了金牌的高三學長說他 $T3$ 只打出了 $25pt$ 的鏈,加起來 $35pt$,看來此次的 $T3$ 有點毒啊。
指望得分:$100+100+10$ 。
$day1$ 好像人均 $205-210$,沒有區分度,但願明天能拿個不錯的分數。
還有半個下午 $+$ 一整晚的時間能夠頹,看番去咯!
(晚上)
聽教練說今天的題過於zz,明天應該會柔和一點,考些簡單算法、數據結構之類的東西,對咱們來講最容易發揮實力。
晨起路途漫霜霧,迷惘不知何處。 歸來寒風等閒度,不如心中愁苦。
也許是由於太冷了,今天進考室的時間彷佛比昨天早一些。
仍是那熟悉的桌面,不過 $\text{Dev}$ 被昨天下午的小朋友給弄成了一堆亂碼,一時間不知所措,便去詢問工做人員,隔壁小哥又一次向我投來了奇異的目光。
好在昨天存的快讀$+\text{LCA}$ 板子還在缺省源裏面,看看時間 $8:10$,飛速敲了個珂朵莉樹和半顆線段樹放在一邊,準備打莫隊時解壓密碼公佈了出來,因而放下鍵盤去作準備工做。解壓出來依舊是沒有題面 $pdf$,須要強行拖拽。
今天出題人良心發現給了不少大樣例。
$T1$ 題目描述比較噁心。看起來和一道二分圖的題比較像,但這道求的是方案數,應該是計數 $dp$ 。$m=2,3$ 的狀況有 $64pt$,研究了一下子碼了個暴力 $dp$:$f[i][p][j_1][j_2][j_3]$ 表示考慮到第 $i$ 種烹飪方法、共作了 $p$ 道菜、材料 $1,2,3$ 分別用了 $j_1,j_2,j_3$ 次的方案數,大力轉移便可,$m=2$ 的同理,因爲 $j_1,j_2,j_3 \leqslant n/2$,因此不須要優化也能輕鬆過掉 $n \leqslant 40$ 的數據。
$T2$ 首先想到的是斜率優化,但限制條件貌似不太好處理,決定先碼個 $64pt$ 的暴力放這兒,等拿到 $T3$ 的部分分後再回來寫正解。樸素思想是用 $dp[i][j]$ 表示處理了 $[1,i]$ 且最後一段爲 $[j,i]$ 的最優答案,時間複雜度 $O(n^3)$ 。後來意識到能夠用一個輔助數組 $g[i]$ 記錄點 $i$ 的最優決策點(即最後一段的左端點),直接 $n^2$ 搞定:$dp[i]=min{ dp[j]+(S[i]-S[j])^2 } (S[j]-S[g[j]] \leqslant S[i]-S[j])$,一發過大樣例,丟一邊準備開 $T3$ 。
$T3$ 照着題意隨便模擬一下就有 $40pt$,愉快地敲完 $n^2$ 模擬,加上 $15pt$ 的鏈,$day2$ $183$ 到手,加上 $day1$ $393$,此時離考試結束還有一個半小時,衝刺一下應該有上 $400$ 的可能。
目前還有兩個任務須要完成,但因爲時間的限制,須要捨棄一部分:
$(1).$ 用一種特別麻煩的蠢方法寫 $T3$ 的二叉樹狀況($20pt$)
$(2).$ 嘗試 $T1,T2$ 可能成功的難點突破 $(36pt+36pt)$。
猶豫了一下,最後決定放棄二叉樹,畢竟想出正解的回報更豐厚。
惋惜的是,對 $T1$ 容斥 $+$ 計數 $dp$、$T2$ 斜率優化的嘗試最後都以失敗了結,直到考試結束依舊仍是這個分數。唉 $...$ 虧大了。
退出考室後頓時心涼了半截,今天確定人均 $203+$,而我由於貪圖正解分數的肥美,連 $203$ 的基礎分都沒拿全。
指望得分:$64+64+40=168$ 。
(後來發現 $T3$ 數據描述中看漏了 「存在一種 $1$ ~ $n$ 的排列 $p$ 使得XXX」 致使那 $15pt$ 的鏈也丟掉了,因此只剩下了 $40pt$ )
$day1:$ 模擬 $+$ 樹形 $dp$ $+$ 爆捜
$day2:$ 暴力 $dp$ $+$ 暴力 $dp$ $+$ 暴力樹形 $dp$
指望總分:$210+168=378$ 。
今年考了 $3$ 棵樹。
做爲一個暴力數據結構選手來講,這本不是壞事,奈何出題人過於 $dului$,根本不留活路。。。
md 這一年的算法都白學了,到頭來啥都沒用上,去年高一好歹還碼了個最短路,今年竟然全寫了 dp。
考聯賽爛成這個樣子,只有退役了。
最後的機房時光在局域網聯機 $mc$ 中愉快度過。
文化課我來啦!
咕咕 $\text{F}$ 終於放出成績了,和預計的同樣:$378$ 。
雖然分不高,但排名彷佛還不錯?
那就 $...$
文化課拜拜啦!
$\text{SCOI}$ 我來啦!