Mathematica有趣小問題分享

寫程式過程,常遇到看似簡單,但要花幾分力氣想一下的問題,持續收集中。這些問題我有很多種解法,有的超快,有的短碼。有興趣大家可以挑戰看看,沒有獎品。

問題一 將列表 {a,0,0,0,b,0,0,0,0,c,d,e,0,f} 變成 {a,a,a,a,b,b,b,b,b,c,d,e,e,f}

說明 列表中的每個0 都要變成他左邊的元素

問題二 將列表 {a,a,a,a,b,b,b,b,b,c,d,e,e,f} 變成 {a1,a2,a3,a4,b1,b2,b3,b4,b5,c,d,e1,e2,f}

說明 承上題,將重覆兩次以上的元素 加上編碼

問題三 將列表 {1,2,3,4} 變成{{1},{2},{3},{4}}

問題四 將列表

{{46/5, 46/5, 46/5, 46/5, 46/5, 46/5}, {92/5, 92/5, 92/5, 92/5, 92/5,
92/5}, {138/5, 138/5, 138/5, 138/5}, {184/5, 184/5, 184/5, 184/5,
184/5}, {46, 46, 46}} 變成

{“白", “白", “白", “白", “白", “白", “黃", “黃", “黃", “黃", “黃", “黃", “綠", \
“綠", “綠", “綠", “藍", “藍", “藍", “藍", “藍", “橙", “橙", “橙"}\ 說明 將相同數字變成相同顏色

問題五 產生如下的列表

A: {{1, 1}, {1, -1}, {-1, 1}, {-1, -1}}

B : {{1, 1, 1}, {1, 1, -1}, {1, -1, 1}, {1, -1, -1}, {-1, 1, 1}, {-1,

1, -1}, {-1, -1, 1}, {-1, -1, -1}}

發表留言