Try   HackMD

2024 IONC 心得

課表

為啥背景要是黑色的(?

因為IONC課表是透明的

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

營前

會知道IONC是因為EZY那時候跟我說有這個營隊
然後完全沒有參加過營隊的我就這樣傻呼呼地去報了名
但首先考慮的點是
1. 地點是在清大,新竹,有夠遠的
2. 我去不會被電爛嗎?
3. 這些課程對我有幫助嗎?

剛好IONC官網就有提供題單(其實就是atcoder problems training list
我去vjudge上刷了一下,大概了解先備知識大概到哪
但還是有點小緊張,因為有些演算法我還不穩
但是我很想去聽進階班的演算法
所以要去IONC前我超焦慮的XD

出發

因為是台南

新竹
然後剛好遇到颱風天,台鐵鐵路斷掉,還在搶修
原本打算搭火車上去的,就改成搭客運
客運有點不舒服,因為睡覺沒法往後靠(我不敢把座位往後壓下去XD
但終究還是因為路程遙遠,所以在車上玩玩手機就睡著了

到了新竹後,首先找清大(BTW 我因為搭客運搭的很想吐,所以沒吃午餐
找到清大的路之後,我跟爸媽就一起往校門口出發
有一件很好笑的事情,我看著Google地圖走
然後我媽不相信我的方向,隨便在路上攔了一個人問
才發現我根本走反了><

到最後進到清大,清大是真的大,比成大還大
而且超多植物的
但我不太喜歡,因為我要背著筆電這樣四處跑,根本重訓

第一天

第一天早上是報到,我不小心太早去,所以是第一個進去的(temmie帶我進去的
下午是ststone上課,上的是基本技巧
大概就是二分搜、雙指針還有一些奇奇怪怪的東西
但我剛好都有聽過,所以就自己在練atcoder XD
(那時候我有一個錯覺,還以為IONC就這麼簡單,害我有點小失落了

晚上都會舉辦練習賽,第一天考試大概就考一些基本的演算法
然後好像抄了兩題CSES跟一題atcoder dp contest吧XD
(還有人說這是 CSES CAMP 不是 IONCAMP XD
但是我CSES那兩題有點小燒雞
好像是什麼邊界沒判好跟初始化的東西沒用好
(大概也是因為那邊的codeblocks不好用吧XD

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

不小心就拿了第一

第二天

早上很早就起床了(晚上睡不好,床板有夠硬
早上我去聽進階資結,講師應該是penguin
整體感覺 : 根本超難
剛開始就區間dp + 區間distinct + 區間mex
這誰會???
這些算法我還是第一次聽,所以落差很大
接著講完馬上鬼轉Treap
Treap那邊我聽得格外認真
因為它相對來說算是比較好懂的東西了
但是因為我是第一次刻struct的模板
假如我邊刻Treap邊上課,我根本就跟不上進度
所以我只好闔上筆電,專心聽課了

Treap完後,教的是一大堆均攤式分析複雜度
我根本不懂,但還是努力聽了,現在回想起來,根本不記得任何東西了XD

最後接了一個吉如一線段樹
整體感覺就是 : 聽不懂XD
跟持久化線段樹那樣的東西一樣,我是有聽概念
但沒實做過根本不會XD

下午教的是動態規劃,講師是shorla (不知道有沒有拼錯
一開始滾動優化我還聽的懂
突然一個鬼轉,就開始拆解DP式
再來就突然斜率優化,根本打得我措手不及
而且那些先備知識根本是數學的東西
所以整堂課就直接掛機 (我應該去練題目的才對 QQ

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

最後就考了一個零分 幹

一開始戳pE 看題目是range distinct value
早上講過的例題,結果我根本還沒去練
然後早上講的離線方法我根本不會實作,所以就燒雞了
這天本來是可以隨便去其他題撈分數的
但因為我第一天考太高,結果第二天沒一題AC會很丟臉
所以我就掛機了XD
(我還是有去寫pC Atcoder dp contest的 L (?
但考試的時候我把min 寫成 max
Debug不出來 心態炸裂

結果比賽結束後,我才知道大家都直接去網路上找解答,然後複製code丟上去
不過我沒差,心態炸XD

第三天

早上是去聽進階圖論,講師好像很強orz 但是我忘了他的id了
反而我圖論還聽得比較懂
然後因為昨天晚上在那邊補資料結構的題目
早上起來根本沒精神
圖論講了SCC,我根本沒學到
不過幸好比賽沒考到XD

SCC講完後,好像接了一個樹論的部分吧
我整個就有精神了(因為下課10分鐘有睡覺XD
但樹論整體來說還是很難
畢竟有些題目還是要搭配資結去做
但是我根本就還沒學阿!!
最後我就聽了LCA 跟 樹壓平
然後順便AC了 TOJ 的一題 TOJ 159

下午是Greedy,講師不認識
一開始的Greedy東西我都有學過(因為沒分基礎班跟進階班了
然後我稍微去刷了一下TOJ題目
回過神來講師已經講到Greedy的特殊用法了
依舊是搭配資結,我已經放棄,根本沒在認真聽
到了DP x Greedy
我有聽了一下,發現很難懂,但也好像有懂了什麼
最後的可後悔貪心我也有稍微懂了一下XD

最後是例題們分析,這很扯
講師挑了幾題cf上3000多分的題目出講解
這誰會???
但3000多分的題目,意外的好實作(但我沒去補題目,我超爛

最後就吃點心,然後努力聽課

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

第三天以後的比賽都是採去團體賽
基本上都是3人組隊,除非您很電
隊友的部分,我隨便找了一個室友+上廁所的時候遇到的嘉中新社長
然後我們就開了一個team來打比賽了
一開始team的名稱我打test,因為也沒想到有什麼名字
阿你在計分板看到那個很中二的名字就是嘉中新社長打的ㄏㄏ

但說是團體賽,又好像不是團體賽
因為題目的難度頗高
所以全部的題目,我隊友都好像很燒雞
連子題的分數都是我去撈的
打起來的感覺就是,好像把團體賽打成了個人賽

但我沒有要怪隊友的意思
因為是我有修進階班(=我有學過基礎班的東西
再加上我本身就有打過線上atcoder 、 cf那種比賽
所以對於一些題目的梗跟一些直覺是比較好的
(所以我就說IONC CONTEST是辦給那些早就學過的人了XD

最後我一個人砍了262多分,12多名,有點菜

第四天

早上是數論,講師是很電又很喜歡看動漫的人,但我忘記他的ID了XD
他一開始講的篩法、歐基里德、快速冪 我都有學過
所以整題來說就是在重聽觀念並打穩的
BTW 他上課的時候也有講DP那天聽不懂是正常的,這讓我留下了開心的眼淚(X
然後話題急轉直下,突然直接講了擴展歐基里德跟擴展費馬小定理(還先教了歐拉函數)
我直接大燒雞,最後又跟DP那天一樣,根本掛機了

下午則是其他技巧,講師是一個大二升大三的學長(我只記得這個,對不起
課程內容有點跳,我大致上聽了一下bitset優化跟分塊

一開始講師說其實bool陣列跟int陣列占取的空間是一樣的
我一臉「啊???的」
然後上去DC跟tobiichi說了一下這個
然後tobiichi去TOJ上測了一下,好像並沒有
Anyway, bitset優化確實省掉了空間 & 時間
只是bitset不能由變數去條配空間是一件蠻傷心的事情

接著是均攤式分析
因為第二天資結我有在認真聽,所以均攤式分析我有基本的概念了
然後我就稍微神遊了一下,一回神,我又聽不懂了 乾

最後應該是分塊(我記得我有跳掉一個單元,因為我根本聽不懂
然後分塊這裡我也是燒雞
因為早上數論剛講過數論分塊,害我還以為是同樣的東西
結果等到講師講到了操作分塊我才意識到根本不一樣
這個分塊比較像是實作的想法(類似brute forces 、 greedy 那種
所以我操作分塊聽了一下下,但沒聽懂

第四天計分榜
最後比賽砍到了第八名,好耶
而且嘉中社長有幫我寫了最後一題37分,耶
據他說是網路上模板隨便套上去就有了
只是那題我看題目名字我就不想寫了,所以根本沒看XD

第五天

最後一天是比賽
早上是TA time
但好像很少人知道TA 就是 Teaching Assistant
所以還有很多人在問XD
不過就是讓我們自己學,然後有問題可以問TA

早上我就又來了一波弱點分析,我最後跑去刻我的Treap模板
(結果我花了一個上午還被無序Treap搞心態,受不了了

第五天記分板

下午的比賽有分div 1跟div 2
我考慮到我的知識儲備跟我隊友的
所以我毫不猶豫地選擇了div 2
(但我很ㄔㄨㄚˋ,因為koying說假如發現不符合該分段的人去炸魚會被他Reject 然後丟到 div 1
但顯然我是多慮的,因為我一開始就燒機了XD

最後一個小時封版前我最後打到了第一名
但是在封版的時候被超過了
只是最後比賽的時候有即時更新一題梗題上來
我用我慢到靠北的手速,在三分鐘內submit了4次,就搶走了那題的首殺XD

所以到最後比分還是打回了第一名,開心!

雖然我們這隊的分數最後都是我拿的,但不外乎我的隊友都有認真在想題目,嘉中社長也有幫我分析轉移矩陣(雖然那題是我燒機
所以最後領獎的時候,因為我想趕快回家,所以我就領了個首殺pN獎就跑路了(但到最後客運晚了一班 乾
所以後面IONC 的鞋咖獎我就一個都沒聽到 真可惜QQ

總結

IONC 是一個很充實的營隊,一大堆的電神聚集在一起
我也有看到了那些本應存在在神話當中的人XD
像是冰川,我那時候APCS有一場還是在看他的題解XD
這次也學到了超多東西
Treap、持久化、dp斜率優化、k步矩陣、啟發式
一大堆奇奇怪怪的東西湧入我的腦中
也在營期的時候偷偷聽到了有人在聊manacher
反正整個血賺!

首殺 pN大象 獎(賽後好像有送棋盤但我先走了:ohwhy:)

image