HWMT02 - Never Gonna Give up (Ver. spell-out)
作業資訊
- 檔名必須為「hwmt_q2_你的學號.py」,例如 hwmt_q2_9962816.py
題目敘述
本題目會給你一個字串 in_str,及元素週期表的全部或部分內容 p_table,要請你撰寫一個函式 spell_word_by_ptable,將該字串由給定的全部或部分的元素週期表當中,抽出一些元素來組成(可重複抽取),例如上圖為 never gonna give up 以及其組成方式。當然由於在組成 never gonna give up 時多加了一個「r」和「u」,因此這並不是一個簡單的範例,本題目只需要在不必加減字的狀況下做組合。本題目亦會給你一些多餘的圖片,以適度放鬆作業心情,唯部分圖片帶有髒字,或者需要成年後才適合觀看,故請你確定自己能接受以及已成年之後再看。
輸入說明
一個不為空的字串 in_str,代表要組成的字串;以及一個不為空的串列 p_table,其中的每個元素是一個字串,代表可以被用來組成 in_str 的元素。為了方便,in_str 這個字串和 p_table 裡面的每個字串,都只會使用小寫英文字母。
輸出說明
回傳一個 list,代表任何一種正確組成 in_str 的方式。若無法組成,請回傳空的 list。
Sample Input/Output
- 輸入:'practice', ['ar', 'rg', 'ce', 'al', 'sc', 'tl', 'o', 'pa', 'te', 'c', 'ti', 'pr', 'ra', 'ti', 'p', 'ac', 'at'],輸出:['pr', 'ac', 'ti', 'ce']
- 輸入:'yes', ['yb', 'se', 'y', 's', 'es'],輸出:['y', 'es']
- 輸入:'math', ['mg', 'ti', 'mn', 'mt', 'as'],輸出:[]
- 輸入:'after', ['f', 'te', 'ar', 't', 'r'],輸出:[]
提示與注意事項