切換
舊版
前往
大廳
主題

ZeroJudge - a176: Battle! 解題心得

Not In My Back Yard | 2018-11-21 13:25:31 | 巴幣 2 | 人氣 173

題目連結:


題目大意:
以下有5種方塊(使用全形比較好對齊,但實際上要輸出的是半形):
*   |    |  * |**  |*** |
****︱****|*** |**  | *  |
每一種方塊都是 2 * 4 的大小(包含空白)。

現給定兩正整數 N 、 M ( 2 ≦ N ≦ 6 , 2 ≦ M ≦ 10 )。隨機挑 N 個方塊(可重複挑),而相鄰的方塊種類不相同、且每種方塊不會超過 M 個。求此種挑法的方法及方法數。



範例輸入、輸出:
到原題目觀看會比較好(巴哈的排版不太友善)。


解題思維:
典型的DFS題目。概念類似於 c832: 第三題:遞迴搜索b511: 換銅板 。都是第一格位置先挑第一個放放看,然後遞迴去放第二格。

只是因為此題要求相鄰方塊不能相同、而且同一種方塊最多只能 M 個。因此會多一些判斷,來決定該不該放這個方塊,然後遞迴。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

太勤勞了
2018-11-21 14:56:46
Not In My Back Yard
「盡量一天一更」可不是說假的,雖然已經斷更兩次了QQ
2018-11-21 15:05:20
快來跟我大喊~野野野
辛苦了!!≧∇≦
2018-11-21 17:52:09

更多創作