骨牌

骨牌

中等

簡介

在 Toyland,火車總是忙著把寶物運送到城市各處,從閃亮的彈珠到稀有的積木都有。 火車行駛的軌道由一片片色彩繽紛的骨牌狀零件組成,每片零件上都標著 2 個數字。 火車要能前進,骨牌就得排成一條完美的鏈,讓數字兩兩相合。

今天,一批稀有玩具的緊急運送任務正等著處理。 有人交給你一組軌道零件,要你檢查看看。 如果它們能排成一條連續的鏈,火車就能上路,把歡笑帶到 Toyland 各處。 如果不行,這組零件就會被丟掉,再換另一組來試。

玩具們都指望你解開這個謎題。 骨牌能接起軌道,讓火車順利上路嗎?還是這組零件只能被留下呢?

說明

排出一條骨牌鏈。

計算如何排列一組給定的骨牌,讓它們形成一條正確的骨牌鏈。 在鏈中,一塊骨牌其中一半上的點數,必須與相鄰骨牌鄰接那一半的點數相符。 此外,兩端沒有相鄰骨牌的骨牌(第一塊和最後一塊),其半邊上的點數也必須彼此相符。

例如給定骨牌 [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 編輯 連結會在新視窗或分頁中開啟
Zig Exercism

準備好開始 骨牌 了嗎?

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