# HW02 補充說明 :::info 作業發出後,任何更新將會寫於此 4/7 2.1 更新: - 如果先讀完一個很大的`.ass`檔案再印出,可能會導致你的時間差很多。因此,建議讀一行字幕 -> 印完一行字幕 -> 讀下一行字幕 4/6 2.3 更新 - 測資輸入將會都是大寫 3/30 2.1 更新: - 新增 Time Shift = -10, 兩倍速的範例說明 3/27 2.1 更新: - PrimaryColour 只有 10 進位和 16 進位 3/20 2.3 更新 - `en_US.dic` 將會與 `hw0203.c` 在同一層級中,請保證路徑正確 - 如果兩個單字機率相等,請選擇**檔案中順序**靠前的單字 - 如果找不到任何合法單字,請輸出 “No Advice\n” 並直接終止程式 - 錯誤輸入時,請輸出“Wrong Input\n”,以增加助教批改速度 ::: ## 2.1 Subtitle Player - (add: 4/7) 如果先讀完一個很大的`.ass`檔案再印出,可能會導致你的時間差很多。因此,建議讀一行字幕 -> 印完一行字幕 -> 讀下一行字幕 - (add: 3/27) PrimaryColour 只會出現兩種可能,一個是 10 進位整數(`11861244`),另一個是 16 進位整數(`&H00B4FCFC`) - (add: 3/30) 以老師提供的 ass 檔案為例,如果是 Time Shift -10,兩倍速: ``` Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:25.06,0:00:28.86,Default,,0,0,0,,... Three minutes. Dialogue: 0,0:00:28.94,0:00:32.32,Default,,0,0,0,,Oui, Chef. Turn on the stove. Come on. Hurry up. Oui, Chef. ``` 如果 Time Shift -10 會變成 ``` Dialogue: 0,0:00:15.06,0:00:18.86,Default,,0,0,0,,... Three minutes. Dialogue: 0,0:00:18.94,0:00:22.32,Default,,0,0,0,,Oui, Chef. Turn on the stove. Come on. Hurry up. Oui, Chef. ``` 然後再對這個秒數兩倍速播放。 也就是第一句出現實際時間為 `0:00:15.06`/2 ## 2.2 Premier League ## 2.3 Wordle Solver - 單字表名稱必為 `en_US.dic` - `en_US.dic` 一旦存在內容必正確,前提是存在 - `en_US.dic` 將會與 `hw0203.c` 在同一目錄中,請保證路徑正確 - 請找尋僅有英文字母的單字即可,其他單字請跳過 - 我做出來合法的單字應有 4772 個,當然只是參考,但我的測資應該會是用這個生的 - 單字的頻率是每個字母頻率相加,別問我為什麼這樣,這是我問老師得到的答案 - 第一個推薦單字應是 EERIE - 如果兩個單字機率相等,請選擇檔案中順序靠前的單字 - Feedback 輸入我保證長度小於 1024 - Feedback 輸入大寫英文字母以外的皆算錯誤輸入 - 錯誤輸入時,請輸出“Wrong Input\n”,以增加助教批改速度 - 如果找不到任何合法單字,請輸出 “No Advice\n” 並直接終止程式 - 由於助教補充說明與老師的 pdf 有衝突,因此在測資輸入的部分都會是大寫 - 你們可以使用以下指令得到 en_US.dic,可以去查查 wget 是什麼 ``` wget https://cgit.freedesktop.org/libreoffice/dictionaries/plain/en/en_US.dic ``` - 字母頻率請看 Text 那列,助教人很好,字母頻表給你們了,答案我會以這張表為準 ``` A: 8.2 B: 1.5 C: 2.8 D: 4.3 E: 12.7 F: 2.2 G: 2.0 H: 6.1 I: 7.0 J: 0.15 K: 0.77 L: 4.0 M: 2.4 N: 6.7 O: 7.5 P: 1.9 Q: 0.095 R: 6.0 S: 6.3 T: 9.1 U: 2.8 V: 0.98 W: 2.4 X: 0.15 Y: 2.0 Z: 0.074 ``` - 以今日題目為例,輸出應該會長這樣子(助教不太懂 wordle 規則,如果有錯請跟我講): ``` Advice: EERIE Feedback: BBBBB Advice: STOAT Feedback: GGBBB Advice: STUNG Feedback: GGGGG Congratulations!! ``` ## 2.4 BMP - 你們可以參考這個:[圖片傾斜網站](https://onlinetools.com/image/skew-image) - 怕作業裡的角度示意圖會有點誤導,所以圖片角度傾斜的呈現方式主要以上面網站為主 - 你們程式的輸入角度要可以支援小數點後兩位 - 90 度是非法輸入,所以 $0 \leq angle < 90$ - 高度保持不變 ## 2.5 Large Language Model LLM. ## 2.6 Bonus: Where is errno