# | Problem | Pass Rate (passed user / total user) |
---|---|---|
14569 | Linked Letter (Final-makeup-1) |
|
14570 | Find The Way Out (Final-makeup-2) |
|
14571 | Rotate Matrix (complex ver) (Final-makeup-3) |
|
14572 | Taiko no Tatsujin (complex ver) (Final-makeup-4) |
|
Description
給定主要執行程式main.c (題號.c)、以及Header檔function.h (題號.h);請試著完成Header檔中未實現的函式:traversal()
function.h:
Methods:
- void traversal(LinkedLetter*) – 需不斷的拜訪傳進的LinkedLetter記憶體的下一個LinkedLetter記憶體(next)直至結束(NULL)。並將所有拜訪過的LinkedLetter中的字母(letter)依據其字母型態(letterType)的不同輸出成大寫字母、小寫字母,或不輸出。
hint:
-
可以透過字元的加減法輸出大寫字母
-
可以透過迴圈和next來不斷拜訪並取得下一個LinkedLetter
-
可以透過判斷LinkedLetter記憶體是否為NULL,來決定是否終止迴圈
function.c
Input
TTTTTT
Note:
-
輸入 6 個字元 T 分別代表字母 a~f 的字元狀態
-
T 為 'U', 'L', 'N' 其中一種
-
無需處理輸入
e.g.
UULLUL > ABcdEf
LLNLNN > abd
Output
輸出符合以下格式:
a1b1c1d1e1f1
Note:
-
輸出的最後必須要有一個換行符號 ('\n')
-
a1~f1 分別為大小寫不拘的字母 'a' ~ 'f'
Sample Input Download
Sample Output Download
Partial Judge Code
14569.cPartial Judge Header
14569.hTags
Discuss
Description
給定一個6*6的二維陣列(稱作map),map中只會有’-’, ‘x’, ‘P’三者,分別代表「可走的路」、「不可走的路」、「人的位置」,請試著找出人(’P’)走到map最右上位置(map[0][5])的路徑。
Note:
-
人(’P’)的位置必在map左下角(map[5][0])
-
移動規則:若可以同時向右或向上移動,則向右優先,向上次之(移動方向只會有「向右」、「向上」,不會出現「向左」、「向下」的情況)
說明:若無法向右,則向上
無法向右的情況:
-
超過地圖邊界
- - - - - -
- - - - - P
- - - - - -
- - - - - -
- - - - - -
- - - - - -
-
右邊為不可走的路
- - - - - -
- - - - - -
- - - - - -
- - P x - -
- - - - - -
- - - - - -
-
右邊為死路(向右後的下一步無法向右和向上)
- - - - - -
- - - - - -
- - x - - -
- P - x - -
- - - - - -
- - - - - -
Input
map
Note:
-
map為6*6的二維陣列,其中只會有’-’, ‘x’, ‘P’ 三者其一
Output
輸出比須符合以下格式:
stepRecord
Note:
-
輸出的最後必須有一個換行符號 (“\n”)
-
stepRecord為字串,紀錄人(’P’)到map[0][5] 的路徑
-
字串stepRecord 中只會有’R’, ‘U’,分別代表「向右」、「向上」
Sample Input Download
Sample Output Download
Tags
Discuss
Description
給定一個整數(稱作times),和一個4*4的整數陣列(稱作matrix),請試著將4*4的整數陣列matrix 以逆時針方向旋轉times 次後,再垂直翻轉1次,並印出。
Input
times
matrix
Note:
-
0 <= times <= 2147483647,代表逆時針旋轉次數
-
matrix 為4*4的整數陣列
-
0 <= matrix[i][j] <= 99
Output
輸出比須符合以下格式:
matrix
Note:
-
輸出的最後必須有一個換行符號 (“\n”)
-
輸出至左對齊
-
整數陣列matrix中每個元素輸出共佔3格(元素本身 + 空格)
Sample Input Download
Sample Output Download
Tags
Discuss
Description
Description
太鼓之達人系列(日語:太鼓の達人,英語:Taiko no Tatsujin,又譯作「太鼓達人」)是一款於2001年起由南夢宮(現:萬代南夢宮遊樂,家用版由萬代南夢宮工作室開發並由萬代南夢宮娛樂發行)發售的業務用大型電玩音樂遊戲系列作品。遊戲玩法與科樂美的Bemani系列類似,玩家需要配合音樂,敲打機台上的日本傳統樂器「太鼓」的框體,從而打出正確的節奏。
其中一種分數判定「通常分數」,分數計算將隨在燃燒段額外增加分數。
遊戲某版本的通常分數計分方式如下:
通常 |
燃燒段 |
|
良(good) |
400 |
480 |
大音符特良(GOOD) |
800 |
960 |
可(ok) |
200 |
240 |
大音符特可(OK) |
400 |
480 |
不可(bad) |
0 |
0 |
小黃條連打(renda) |
100/打 |
120/打 |
大黃條連打(RENDA) |
200/打 |
240/打 |
氣球連打(balloon) |
300/打 |
360/打 |
資料來源:https://zh.moegirl.tw/%E5%A4%AA%E9%BC%93%E4%B9%8B%E8%BE%BE%E4%BA%BA%E7%B3%BB%E5%88%97
給定主要執行程式main.c (題號.c)、以及Header檔function.h (題號.h);請試著完成Header檔中未實現的函式:GetScore()
function.h:
Methods:
- int GetScore(TaikoNote *firstNote) – 需不斷的拜訪傳進的TaikoNote記憶體的下一個TaikoNote記憶體(next)直至結束(NULL),並根據判定(TaikoScore)與表格中的給分標準返回最終得分
hint:
-
可以透過迴圈和*next來不斷拜訪並取得下一個TaikoNote
-
可以透過判斷TaikoNote記憶體是否為NULL,來決定是否終止迴圈
function.c
Input
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
T f c
Note:
-
輸入 15 個字元 T 分別代表15個音符的評分
-
T 為 'G', 'g', 'O', 'o', 'b', 'R', 'r', 'f' 其中一種,f為1或0(1代表進入燃燒段,0代表以通常計分),c為連打數(若T為'f'、'R'或'r',將輸入連打數,T為'G', 'g', 'O', 'o', 'b'時為0)
-
無需處理輸入
Output
輸出符合以下格式:
Score: score
Note:
-
輸出的最後必須要有一個換行符號 ('\n')
-
無需處理輸出