骨牌

骨牌

困難

說明

排出一條骨牌鏈。

針對給定的一組骨牌,計算出一種排列方式,使它們能形成正確的骨牌鏈:一張骨牌其中一半的點數,要和相鄰骨牌相接那一半的點數相同;而沒有鄰居的那兩半(第一張和最後一張骨牌)上的點數也要彼此相同。

例如,給定骨牌[2|1]、[2|3]和[1|3],你應該計算出像[1|2] [2|3] [3|1]、[3|2] [2|1] [1|3]或[1|3] [3|2] [2|1]等等的結果,其中第一個和最後一個數字相同。

對骨牌[1|2]、[4|1]和[2|3]來說,產生的骨牌鏈無效:[4|1] [1|2] [2|3]的第一個和最後一個數字不相同。 4 != 3

有些測試案例可能會在骨牌鏈解法中使用重複的骨牌,請假設使用了多副骨牌。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
Haskell Exercism

準備好開始 骨牌 了嗎?

註冊 Exercism,透過 107 個練習 和真人引導來學習並精通 Haskell,全部免費。