前傳
在人生中,會遇到各種不同的第一次,不管是第一次上學,還是第一次吃麵包,甚至是第一次在走廊上奔跑,都會留下深刻的記憶。第一次的CPE,當然也不例外。
時間回到2022/11/29,這是CPE的報名日期,距離報名時間還有10分鐘,我相當悠閒的拿起手機,想說先進去登入頁面進行等待,但當我點擊CPE官網時,網址下的進度條卻動也不動,彷彿聽到了她說要幫我撐10分鐘,於是我就先將手機放置在旁邊,等等再切換。
但是10分鐘過去之後,網頁並沒有進行切換,仍然卡在當初載入的畫面
「騙人的吧」
我受驚了,不敢相信眼前的事實
10分鐘過去了,20分鐘過去了,狀況並沒有好轉
然而進入第60分鐘,正當我準備要放棄時
「動...動了!!」
進度條開始緩慢的移動,最終成功抵達了終點
看到登入介面的那一刻,雖然心中很是激動,但我仍然控制住情緒,立刻輸入帳號密碼,想要趕緊結束這場戰鬥
「欸都,大同...逢甲...淡..淡江,有了有了」
當我終於找到我們學校,準備按下報名按鍵時
「報名失敗,人數已滿」
這段文字浮現在我眼前
第一次的CPE,完。
沒,一個禮拜後剛好有人取消,我就報名成功ㄌ
正文
考試當天的行程如下
17:30-17:40 | 報到 |
17:40-18-30 | 練習 |
18:40-21:40 | 正式考試 |
由於17:30就開始報到了,所以17:10的離散數學助教課只好十分不捨的翹掉(難怪上一篇要趕緊回家補救),幸好那次似乎剛好沒點名,簡直是賺爛了。
到了考試的現場,工作人員會給一份「考生注意事項」,上面還會附上准考碼,看到的時候我還猶豫了一下,想說我的號碼是啥,結果根本沒差,隨便拿一份就行了。
練習的時段給了4個題目可以用來測試系統能不能正常運作,順便熱身一下。第一題是hello world,剩下三題則都是UVA的題目,我只寫了兩題,看到我們學校有人解出了三題,感覺等等我要被電了,不好欸。
經過了漫長的等待,終於來到正式考試的時刻了,總共有7個題目,每一題都有「解題」和「看題」的按鍵,「解題」的介面有點複雜,有程式碼區塊、測資、各種功能,甚至也有題目,但會擠壓到程式碼的部分不太舒服,所以我是把「看題」切割在螢幕右邊,然後左邊的「解題」只留下程式碼區塊。順帶一提它不會幫你補括號,有點討厭,還有編譯器記得調,它預設似乎不是用來寫C/CPP的。
接下來稍微敘述一下題目好了
第一題(UVA10931:Parity)
給定一10進位整數,要你轉成2進位跟求出有幾個位元為1。
這題好像是那49題必考的其中之一,趕緊解完前往下一題。
第二題(UVA10789:Prime Frequency)
給定由數字和英文字母組成的字串,若其出現次數為質數則印出。
看到質數我整個抖了一下,幸好字串長度不超過2001,直接暴力建表前往下一題。
第三題(UVA10903:Playing War)
有一些人在進行猜拳比賽,然後給定一連串的比賽資訊(誰跟誰比、出什麼),要依序印出每個人的勝率。
由於人數不超過100個,所以直接用陣列存每個人的勝場數跟敗場數,最後遍歷一次即可。
第四題(UVA10336:Rank the Languages)
給定一個由英文字母組成的圖,求出各個字母分別有幾個不同的區塊,並將其按照次數排序。
基本的BFS題,對還沒走過的點進行擴散,若是相同字母就繼續走。最後可以用pair之類的結構把字母跟次數綁在一起排序。
第五題(UVA00300:Maya Calendar)
有兩種計算日期的方法,給定第一種,要將其轉成第二種印出。
最後的一小時都在搞這題,結果邏輯炸裂沒寫出來,心態沒了。
第六題(UVA11584:Partitioning by Palindromes)
給定一由英文字母組成的字串,要分割成好幾個迴文子字串,求出最少的子字串數量。
將一個點當成起點,盡可能的延長其長度,找出最長且符合條件的子字串,接著將其終點+1設為一個新的起點,重複上述步驟直到整個字串走完。
如果只有由左往右跑有個測資會錯,手動算了一下確實是有點問題,將其跟由右往左跑取最小值就過了。
第七題(UVA10635:The Art Gallery)
還沒仔細看過題目在幹啥,因此
最後作答完畢之後會要你填一個問券,大概在問監考人員有沒有檢查你證件、有沒有播放考場規定影片之類的,還有一題是問在考試期間有沒有出去上廁所,還蠻有趣的。
結論
這次的題目跟往年相比感覺是比較簡單的,而且敘述都挺好理解的,又或者是說看測資都能自己腦補出題目,像我英文這麼破竟然完全沒有用到任何一次英漢字典的功能,這不是很戲劇化的發展嗎?
前五題的作答答對率也都有個80%以上,尤其是第五題,85.63%位居全部最高,沒解出來事後真的會越想越不對勁。不過也算是達成了我當初備審資料說要4題以上的目標,還算是可以接受了。
之後,我也會持續加強資料結構還有演算法的技巧,還有英文的能力(畢竟沒有天天過年的),期許下次能往六題邁進。
最後放個成績