出過的題

網路上很多出很多題的人都會開一個 blog 來記錄他們出過的所有題,所以想說我也來開一個。

最近會特別想要寫這樣的一篇 blog 除了是我出了越來越多題,可能稍微在出題這件事上有一點點經驗了。而來是因為 ojdl 目前是斷外網的狀況,所以想說讓我之前的魔鏡題至少有一個地方可以被看到。如果你真的很想寫我出的魔鏡題,那 我覺得你怪怪的 可以來跟我要測資,雖然不保證測資很強就是了。

期望的形式是按照題目被用的比賽 (也就是其實跟出題順序不相同) 的時間序來排,如果這個比賽很有趣,或有一些不只是題目相關的軼事的話就會有一篇獨立的 blog,這邊就是一個題目所引跟整理出題相關的 blog 吧。

FAQ

我出過什麼比賽

* 是我有 coordinate 的

  • 建中資訊讀書會魔鏡 7 *

  • 2025 eJOI

  • 114 學年度建中校內賽 *

  • 114 學年度全國模擬賽

  • 2026 IOIC 的某些天

  • 2026 SEATST

我之後會出什麼比賽

  • 才不告訴你

我手上有幾題還沒有出現在比賽的

看這篇 blog 會被暴雷嗎

魔鏡

一個字,累了。

題目 : ojdl 不見了,沒救。

接資讀以後我總共 coordinate 了 7 場魔鏡,分別是暑假一場,兩學期三次段考各一場。大概一次魔鏡平均我會出四題,暑假那次我出了六題。

暑假魔鏡 (編號 -1) 的題目出了六題經典水題,唯一一題比較有趣的是這樣 :

,構造 個不相交的拋物線 ,滿足任兩個拋物線所有係數分別不相同 (也就是 ),且所有拋物線係數和對 取模相同。

個人覺得蠻好笑的,開場一分鐘就有人做出來了,留給讀者練習。

第 0 次魔鏡出的題目有我的有四題,也都蠻簡單的,比較少見的題目應該是判斷一張圖有沒有偶環,跟一題還算有趣的雙指針。

第 1 次魔鏡有我參一腳的有四題,比較有趣的應該是操作分塊卡空間題,跟一題持久化線段樹,我那個時候真會實作。
第 2 次魔鏡五題都有我,其中比較好笑的是我出了一個 heuristic 的 interactive,然後導致很多人把時間砸在上面撈微乎其微的分數,蠻好玩的。

第 3 次魔鏡六題有四題有我,因為是愚人節所以出了一個二分圖最大團,但有出空的圖的測資讓友人 WA 了很多次。因為不會最近點對被波路教了以後,覺得很好玩所以出了一題 scaling 計幾題,結果測資生太爛被 dreamoon 爆破,一直說要卡掉他但都太忙就懶得生rrr。

第 4 次魔鏡五題都有我,我出得很開心,因為第 3 次魔鏡到第 4 次魔鏡資讀只有上了我的四堂圖論,所以就變成圖論大混戰。有有趣的 Kirchoff 題,有趣的 cut basis 題,有趣的虛樹 + vertex cover 題,有趣的根本不是圖但用二分圖包裝嗆人題,有趣的 bipartite matching 題。出圖論題的好處就是很多東西可以出,壞處就是好像有點打擊信心。

第 5 次魔鏡六題有五題有我,裡面出了某種 output only (我覺得在 ojdl 上出類 output only 真的蠻好玩的),有搞人題 1,搞人題 2,還有不知道為什麼沒有人寫的簡單回滾莫隊。作為最後一次魔鏡,放些臭題應該是傳統,所以我放了一題官解超長的板子題。

稍微統整一下以後發現,其實我魔鏡雖然看起來出了很多題,其中也很多我覺得作為練習題很不錯的題目,但其實都沒有特別好玩。這大概就是要出基礎技巧練習題跟要出有趣的題目的難度差吧。但不得不說出這些題目真的幫我把我的技巧跟實作鞏固得不錯,畢竟出題你寫官解的時候沒有 judge 給你驗,所以你會需要自己寫對拍,自己稍微比較小心一些。而且就像蔡孟宗說的一樣,檢查一個東西自己有沒有懂最簡單的方法就是出一題,我這些魔鏡總共出了 30 幾題,的確是幫我檢查了很多我不熟的地方。
出魔鏡比較痛苦的是要密集頻繁的生題,所以品質很難把關,平均起來等於我大概一個禮拜就要生出一題。聽起來可能不多,但考慮進去平常剩下的空閒時間其實很少,又要維持這樣的頻率一整年真的很累。只能說,還好我退了。

2025 eJOI

OI 初體驗。

題目 : Day 2 pB - Reactions,可以去 eolymp 上面 upsolve

2025 IOI 台灣國手群一起出的,題目本人不是特別好玩 (雖然他有 800 個解我蠻開心的),但因為是第一次丟區域 OI 比賽,所以還是稍微講一下。

起因是因為我們在合歡山上面 vir EGOI,寫一些就突然想說還是我們來出題目給 EGOI,但一來是 call for tasks 已經結束了,二來是 EGOI 不收高中生的題,所以只好計畫作罷。就在這個時候,我們看到了 eJOI 的 call for tasks 的死線延期了,延到國培的最後一天。看了一下他們的考古題都出太難了,不適合國中生。因此我們想,如果可以出一個快樂簡單可愛小水題的話一定會上吧。我們後來用了七天的時間量產了三題,其中兩題最後被 shortlisted,其中一題被拿來用,就是這一題。

題目上了以後 eJOI 就邀請我們去保加利亞玩,但因為收到這個消息的時候我們剛被來回玻利維亞的飛機摧殘過,所以沒人想去。現在想想好像有點虧,因為 eJOI 看起來很好玩。

eJOI 也非常有情有義,不但跟我們說可以送我們紀念品,又給了我們證書讓我們拿去做學習歷程 (超級酷),要不是他們的考綱真的很難出題,我應該會多出一點題目給他們的。

一個奇聞軼事是我們的題目延伸出了有人想要指控別人作弊 (看 Codeforces 留言),我自己是覺得看起來不像,但蠻有趣的。

114 學年度建中校內賽

Coordinate 了三場,初賽、複賽、北市模擬賽。

題目 : 初賽, 複賽, 北市模擬賽

初賽跟複賽每一題都慘遭過我的毒手,模擬賽的話則是 A, D, E 是我的。
初賽一開始是想說要出簡單一點,跟一般電腦課比較會教的東西,因此優先考慮模擬、遞迴跟動態規劃,因為我覺得出例如線段樹這類的資料結構講白了也只有真的已經開始打競程,對競程有一定的熟悉程度的選手賽中才會寫,但這不是我想專注切出來的人。也是這個原因讓 pC 是直接拿最經典的 LCS 稍微改一點點而已,原本想說這樣應該夠簡單的。我們也有找其他選手來幫我們驗題跟測難度 (一些成功的、武陵的、中一中的朋友們跟一些學長),測的結果也是 pC 夠簡單,因此想說不會有什麼太大的問題吧,結果最後出來看起來其實真的還是太難,我的問題。

初賽當天我其實有點 (可能不只有點) 崩潰,除了似乎難度不如我們預期以外,還有因為我要處理一些賽中的作弊事件又要切校隊線,導致我沒有時間吃飯然後血糖很低,那幾天又很忙沒什麼睡,導致後來聽到有人要跟我抱怨這場比賽怎樣都會直接被我罵。但反正順利完工,進入複賽。

複賽在我們比賽前一天在做最後確認的時候,TIOJ 的機器突然就燒壞了,我們全體陷入恐慌,後來只好讓複賽往後延一個禮拜,壓在北市賽報名的最後期限選完人。複賽的題目名稱會長這樣是餘切的提案,我覺得很好笑就決定採用,裡面大部分的題目都是我們一起討論出出來的,當初會想要出一題非典型也是因為全國賽前一年有出,IOI 2025 也有不少,想說應該要跟上時代的潮流,因為怕有人不會用非典型我們還特地在複賽前開了一堂校隊培訓教大家怎麼用,後來版也反映出大家是願意試非典的,也在某種意義下算是強迫大家好好學習非典吧。只不過後來全國賽跟北市賽都沒有非典,但這就是另外一回事了。

北市模擬賽的話比較有料的題都是別人出的,我出的三題中, 2-SAT 全家桶是因為餘切說很多人不會 2-SAT,要幫他們複習一下,剩下兩題是我隨手翻之前北市賽考古題出過什麼就隨便亂縫合一下,投入的 effort 大約等於 0,鼎大跟餘切出的另外三題比較好玩。為了模擬北市賽,我們做了一些很好笑的限制,也很極限的生出了題本,總之整個東西都是在很極限的狀況下做的,但我覺得跟北市賽其實蠻像的,有點好笑。

114 學年度全國模擬賽

出了兩題跟當了美編。

題目 : pC - Trees and Flowers, pI - Another Construction Problem

美編的部分因為沒人想當所以我只好接,文案花 30 分鐘亂寫的,頭貼畫一個小時亂畫的,喂喂的自畫像他自己畫的,總付出時間越兩小時。

題目的部分出了兩題,pI 預設是 easy,出來的版也很符合。pC 預設是 hard,也蠻符合的,全場只有 dreamoon 有做出來,也花了他大概一小時,算是很稱職的 hard 題吧。

稍微介紹一下出題的流程,pI 的題目是因為缺少 easy 的題目所以花了大約 10 分鐘用出的。應該看的出來題目不是很自然,但反正做為一個水題應該還可以就出了。題目是 owoovo 架的,感恩 owoovo 讚嘆 owoovo。

pC 的話則是我出廖衡幫忙 set,出題的時候其實想得很簡單,要出個 FPT 題目。眾所周知,最大團在 natural parameter 底下有 W[1] hardness,也就是說假設你只知道答案不超過 ,那麼最大團目前被相信是無法在 的時間內解決的。(實際上細節很多,但可以先這樣想。) 又眾所周知,最大團在最大 degree 不超過 的狀況下有 FPT 演算法 (也就是有 的演算法),而且應該不難想 (Baltic OI 出過) 。因此應該也不難想像對 degeneracy 有 FPT 演算法。題目的條件又是 arboricity ,這就代表 degeneracy 。原本一開始同時想要考最大團的折半枚舉,但後來想想有 Bron Kerbosch,因為複雜度差不多也沒有特別卡掉他。總而言之就是把一些簡單的 FPT 相關的東西拿來搞一搞就拿去出,沒有什麼太大的智慧,就是一個嵌合怪題。測資因為測題的 phoenix 擅長用剪枝打爆我們的測資,因此我跟廖衡改了很多輪,很感謝他讓我們的測資最後變得夠強,也擋了 dreamoon 蠻多次假解的。

2026 IOIC

IOIC!!!

題目 : Day 1 pD - 有趣的函數, Day 4 pC - 消失的餅乾, Day 4 pD - 烽火台問題, Day 6 pJ - 截然不同

2026 IOIC 我出了三題隨機跟一題趣味賽,出這麼多隨機是因為我是隨機講師。

有趣的函數是一個不有趣的函數,某天在網路論壇上面看到有人在講那一類的函數,就上 OEIS 研究了一下。後來趣味賽一度以為缺題的時候我就丟了,但後來不缺題www。趣味賽比較值得一題的是 bwoah 出的烏茲別克大冒險,我原本只是嘴砲一下,但 bwoah 把他出的很好,bwoah 是 goat。

消失的餅乾是所有隨機題裡面我覺得最有趣的,出題的背景是我在備課的某天在洗澡的時候突然發現這個東西的不對稱性很大,所以隨機可以偷一個很好的常數就出了。選 的原因是因為這樣常數很接近 ,我覺得很好笑。後來芒果還一直想辦法說服我不能這樣出,但最後我還是成功的讓他接受我選 ,後來覺得我應該要出 的,更好笑。

烽火台問題就是一個標準的上課習題,講義裡有幾乎一模一樣的題,上課也有稍微提示會出這題。習題會變這題是波路的點子,原本習題是截然不同,我覺得換成這個有比較好,至少有一個人做出來。

截然不同則是看 Karp 的論文學到的題目,我原本想說我從來沒有看過這樣的題目,應該很酷,結果後來 bwoah 跟我說這個 trick 已經被出過了,我很傷心。但反正不失為一個好的練習題,所以他還是在這裡。我跟廖衡花了一些時間確定整體二分搜的解不會過 (因為我不想強制在線),然後就出了。以一個後見之明來看我或許應該要強制在線,這樣才不會有用 avx512 的解過,但我接受我笨了。

2026 SEATST

蠻好笑的,應該會寫獨立的 blog。

題目 : Day 2 pA - Triple Circuit, Day 2 pB - Car Gathering

會知道這個比賽是因為某天在跟波路抱怨不能投 EGOI 的時候,他跟我講了這個比賽,跟 errorgorn 的 call for tasks。看到 call for tasks 以後第一個反應就是去看考古題難度,結果一打開來就看 IOI 2018 seats 的子題直接被拿來當一題,想說應該很好上。

投了三題,三題都被 shortlist,最後其中兩題被用。據說這場比賽會計入 7 個國家選 IOI 國手的權重,希望沒有人因為我的關係被逆掉。

因為會寫獨立的 blog,因此在這邊就不佔用太多篇幅,好奇到底有發生什麼酷事情的可以去看看。