交大應數轉資工 心得
基本上轉資工第一個看 GPE,第二個看 GPA
Note : 這篇文只專注在如何在交大轉入資工,其他系我就不是很清楚
什麼是 GPE
GPE(General Programming Exam)是類似 CPE 的考試,是一種檢定程式能力的考試,給定要求的輸入,並照著題要求生出正確的輸出,基本上就是程式競賽,總共會有六題,考試時間長達四個小時,每一題都會有分配部份分,根據你所使用的演算法優劣所給定多少分數,通過標準是 240 分,也就是兩題再多一點,題目難度大概是簡單兩題、適中兩題、困難兩題,題目都是由 UVA 網站(全球最大最老的線上評測系統)上複製過來,而且重複率超高,但之前疫情期間是在線上考,就是由教授和助教自己出題,難度也會比較難。
如果想要有更多暸解,可以直接去查競技程式設計的介紹。
如何準備 GPE
- 首先要對 C++ 語法熟悉,如果連 C++ 都不會,那建議還是趕快去學一學。如果你已經有一定基礎(個人覺得學到函式就差不多),那就繼續看下去。
- 上述有提到說 GPE 的題目都是從 UVA 上面抓下來的,所以直接的方法就是把 UVA 的題目都刷完,但 UVA 總共有六萬多題,怎麼可能辦得到?所以就要有目標地刷題。
練習競程的方式有很多種,大家可以上網看各種資奧大神分享他們如何準備,我跟他們比起來真的是弱到爛掉,不過我這邊還是提供一下我覺得比較有效的方法:
我比較推薦的練習網站是Codeforces,這是一個舉辦線上程式競賽的網站,已經有超過10年的歷史了,上面所累積的題目量也是一坨。 首先看到Contests頁面,這是打比賽的地方,通常一個禮拜都會有兩到三場,競賽難度從 div.4 遞增到 div.1,建議還是準備好才來打,要不然就是當炮灰,而且CF上面的競賽面向跟 GPE 不太一樣,硬要說的話 GPE 會比較偏實作,而 CF 考的是一個想法,想到了題目就解出來了,對,其實競技程式跟哪比較會寫程式無關,考得是誰的邏輯能力比較好。更細節的介紹網路上也有很多,這邊因為分享如何準備就不說太多了。
再來看到Problem Set頁面,可以看到許多題目羅列下來,點進去都會有題敘,題目會跟你說你要輸入什麼,然後什麼樣才是正確的輸出,題目也有分難度,就是每個欄位右邊都有個數字,範圍從 800 - 3300 都有,數字越大代表越難,可以先從 800 難度開始,然後如果發現 800 對你來說很簡單,那就寫 900、1000、以此類推,通常到了某個階段你會發現有某些題目做不出來,真的想不出來的時候(大概想了一個小時都想不出來),就可以看解答,題序頁面的右下角通常都會有一個「Tutorial」,點進去就是題目的解答,看了題解之後會發現有可能是某個想法不對,或是不會某個演算法,例如 greedy、dp 之類的,這時候你就可以去學習這些演算法,然後把題目解出來,這裡提供幾個演算法教學網站:Algorithms for Competitive Programming、演算法筆記,這兩個網站都會介紹競程時會用到的演算法,偶而沒事也可以逛一下,當某個難度你覺得寫膩了,你就可以增加難度,這代表有在進步,CF 題目難度比對 GPE 大概 1200-1600 之間,如果能夠穩定寫出這個區間的題目,那 GPE 應該就會考得很高分。 - 講完了平常如何準備,接下來是實戰的部分, GPE 考試通常兩三個禮拜就會辦一次,所以一個學期就可以一直去刷,直到過為止,所以我很建議儘管程式能力很弱的人也可以去試試看,說不定某一次就可以賽過了,也可以當作練習的機會。修「基礎程式設計」這門課就可以考GPE,或平時關注粉絲團,會公布考試的訊息。
- GPE 也有考古題網站,雖然我覺得用起來很困難而且有時候甚至不會運作,所以不太建議用那個,通常直接 google 題目名稱都能找到 UVA 原題還有其他人寫的詳解。 GPE Helper 好用的工具網站,提供各種題目的出現頻率,但似乎只有更新到2021年而已。
GPA 與 GPE 的兼顧
- 先講一下我弱弱的 GPA,上學期 3.7 下學期 3.93,資工的課只有修一門競技程式設計,其他都是應數系的課和一些通識。
- GPE 7/13(線上轉系考):400/600,其他實體考大概五百多,沒有破台QQ,有興趣參考之前的修課心得:上學期、下學期
- 我的成績參考就好,其實公布結果之前我就知道我很穩,這不是最低標準。
- 後來從資工系助教那邊聽說其實教授會設一個標準,只要 GPE 考超過那個標準,不管 GPA 多少都會直接通過。當時那個標準是270分,每一屆應該都不一樣,而且這個標準的設置應該是看人數比例,所以盡量考越高越好。強者我同學 GPA 不到 3.0 而且退選物理,7/13 GPE 300/600分 也轉過了。
所以這就是為什麼我說轉資工第一個看 GPE,第二個看 GPA。 - GPA 如何刷分相信大家爬文都找得到,像我就不太會刷,只好努力被迫修硬課然後認真唸書,最後系排靠前但沒有書卷QQ。
- 競技程式設計(一)是門好課,建議大家都去修~
總結心得
這篇心得希望能夠幫助到所有在交大想轉系的學生,想到去年我也為找不到網路上分享轉系的心得而困擾,所以在結果公布之後馬上就寫了一篇,希望有幫助到人。也很感謝一直幫助我的電神學長,不厭其煩地解答我轉系的問題,還有恭喜強者我電神室友一起轉入資工系。最後還是要說,雖然大家都說資工系好賺錢還怎樣的,但我覺得要不是沒有一定興趣肯定讀不下去,希望大家都能夠找到自己未來該走的路。
最後放上好吃的拉麵~