# MID 評分標準 ## 1. Time Duration 正解及測試資料檔案: https://drive.google.com/file/d/18V8irNrFS7v05BfXSgTqqZxxM9Lls2XY/view?usp=sharing 本次評分共有 20 筆測試資料,每筆 1 分,每筆答案的數字必須完全正確才會給分。 作答格式不影響分數,但建議在數字與文字之間增加空格,同時進行適當換行 (`\n`)。 ## 2. Colorful Diamond 評分標準和 hw0205(卡坦島) 應該滿類似的 各測資扣分標準: A. 沒印顏色/顏色有印錯,規律是錯的 -2 pts B. 顏色有印錯,但顏色規律是對的 -1 pt C. 方塊間有多餘空白 -2 pts D. 方塊寬或高多一格 -2 pts E. '+' 印成 '\*' -1 pt 如果扣 3 分以上不會特別附註錯誤編號 > 平常作業會希望大家可以問清楚,看清楚 Spec(題目) 要求。但因為期中考時間比較趕,所以容許一些錯誤 ### Subtask 1(2 pts) 子任務說明: 判錯 :::spoiler testcase 1(1 pt) ``` -1 4 ``` ::: :::spoiler testcase 2(1 pt) ``` 1 -1 ``` ::: ### Subtask 2(3 pts) 子任務說明: 只有一個矩形($N=1$) :::spoiler testcase 3(3 pts) ``` 1 4 ``` ::: ### Subtask 3(6 pts) 子任務說明: 邊長為 1($edge\ length=1$),但 $N\neq1$ :::spoiler testcase 4(3 pts) ``` 4 1 ``` ::: :::spoiler testcase 5(3 pts) ``` 7 1 ``` ::: ### Subtask 4(6 pts) 子任務說明: $N\leq3$ :::spoiler testcase 6(3 pts) ``` 2 2 ``` ::: :::spoiler testcase 7(3 pts) ``` 3 2 ``` ::: ### Subtask 5(3 pts) 子任務說明: 無其他限制 :::spoiler testcase 8(3 pts) ``` 5 3 ``` ::: ## 3. Treasure’s Password [mid03 testcase link](https://drive.google.com/drive/folders/1NshvXNnu12EycmDDNj-FoZydMIlkYdjy?usp=sharing) ## 4. Parity Bits 2pts for each case :::spoiler Case1 ``` 0 0 0 0 0 ``` ::: :::spoiler Case2 ``` -5 -5 -5 -5 -5 ``` ::: :::spoiler Case3 ``` 12834 12834 12834 12834 12834 ``` ::: :::spoiler Case4 ``` -32723 -32723 -32723 -32723 -32723 ``` ::: :::spoiler Case5 ``` Permutation of five from 35762947 to 35762957 ``` ::: :::spoiler Case6 ``` Permutation of five from -92143647 to -92143637 ``` ::: :::spoiler Case7 ``` Permutation of five from 1147393747 to 1147393757 ``` ::: :::spoiler Case8 ``` Permutation of five from -1123498647 to -1123498637 ``` ::: :::spoiler Case9 ``` Permutation of five from 2147483636 to 2147483646 ``` ::: :::spoiler Case10 ``` Permutation of five from -2147483646 to -2147483636 ``` ::: ## 5. Gymnastic Formation 疊羅漢 > 我不知道為啥只有這題題目有中文。 此題有 10 筆測試,各 2 分。 助教使用[此 `mid05.c`](https://github.com/JacobLinCool/cpta/blob/main/examples/2023-fall/mid05/.build/mount/mid05.c)進行測試。 測試分為錯誤參數值檢測與計算檢測兩部分,各有 5 筆測試。 附註一:此題我有注意到某些人使用 `0` 作為體重之初始值,藉以判斷是否初始化。雖然此次我沒有針對這種情況扣分,但如果要以 `0` 作為初始值,應該需要實作避免 setup 成 `0` 的呼叫,要不然體重初始值應以「不得 setup 之值」作為初始化與否之判斷。 附註二:我還看到有人直接將函式實作在 `weight.h` 裡面的,除非非常明確想要 `static inline` 直接讓編譯器優化時展開函式,否則這樣真的不太好,以後很容易遇到 symbol conflict。 附註三:雖因為我認為疊羅漢不可能疊到二三十層,或體重不可能一兩千公斤,未判斷 `afford_weight` 的 `int64_t` 與 `setup_*_weight` 的 `uint32_t` 邊界,但不是所有助教都像我一樣好說話,所以沒做某些型別轉換的同學以後最好還是要記得做。(有些人用 `int32_t` 記錄體重,與 `uint32_t` 在上界還是有差別)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up