leeys 發表於 2016-1-21 21:05:27

九連環

http://simonsays-tw.com/web/Nine ... ineLinkedRings.html

http://simonsays-tw.com/web/NineLinkedRings/NineLinkedRings.html

九連環的玩法
      九連環由九個相互連接的環及一個中空的長形柄所組成。
      九連環的一般玩法有兩種,第一種是將這九個環從柄上取下來,第二種是反過來將九個環放入長柄中。
      另外也可以由任意狀態解成九個環全取下或全放上的玩法。


http://simonsays-tw.com/web/NineLinkedRings/9ringsUp.jpg

九個相互連接的環及中空的長形柄


http://simonsays-tw.com/web/NineLinkedRings/9ringsDown.jpg
九個環全放入長柄的狀態


http://simonsays-tw.com/web/NineLinkedRings/9ringRadom.jpg

九個環的任意狀態
九連環的規則
      九連環的每個環是互相牽制的,除了第1環,要上下其他環是要在特定的狀態下才可以的,其規則有二:

      規則一:第1環可以在任何時候放上或取下。

      規則二:想放上或取下第N環 (N > 1),就必須:
                 將第 N-1 環放在柄上,而第 1 到 N-2 環全部取下,如此才能放上或取下第 N 環。

      例:取下第9環


http://simonsays-tw.com/web/NineLinkedRings/ringRule.jpg
1-7 環全部在柄下,第8環在柄上,此時第9環可以放上或取下。
九連環與遞迴
      九連環的拆解過程是一種遞迴式,關於遞迴程式可參考疊代與遞迴 這篇文章,其內文所介紹的範例均為直接遞迴,
      而九連環會用到直接遞迴與間接遞迴,感覺好像很複雜,其實遞迴是相當直覺的,由例子直接說明。

      以5連環全解來說明,目的是要將5個環全部取下:




    (00)
http://simonsays-tw.com/web/NineLinkedRings/5rings-00.jpg
    (01)http://simonsays-tw.com/web/NineLinkedRings/5rings-01.jpg
同遞迴的思考方式由外而內推導:
即由最後一環往前推導,思考如何把第5環取下,
要把第5環取下,依規則先要取下1到3環,才能取下第5環
而要下第3環必須第1環在下,第2環在上,所以要先下第1環

(目的:第5環要下)
此時可下第3環

(目的:第5環要下)
    (02)
http://simonsays-tw.com/web/NineLinkedRings/5rings-02.jpg

    (03)
http://simonsays-tw.com/web/NineLinkedRings/5rings-03.jpg

下第2環必須第1環在上,所以要上第1 環
(目的:第5環要下)此時可下第2環
(目的:第5環要下)
    (04)
http://simonsays-tw.com/web/NineLinkedRings/5rings-04.jpg
    (05)http://simonsays-tw.com/web/NineLinkedRings/5rings-05.jpg

下第1環
(目的:第5環要下)終於可以下第5環了

步驟01到05可以看成是3個環全下的方式
即要下第N個環,要先下1到(N-2)個環
    (06)
http://simonsays-tw.com/web/NineLinkedRings/5rings-06.jpg
    (07)
http://simonsays-tw.com/web/NineLinkedRings/5rings-07.jpg

這時要下第4環,必須第3環在上,第3環要上則必須第2環在 上,
第2環要上則必須第1環在上,所以先上第1環
(目的:第4環要下)第2環上
(目的:第4環要下)
    (08)
http://simonsays-tw.com/web/NineLinkedRings/5rings-08.jpg
    (09)
http://simonsays-tw.com/web/NineLinkedRings/5rings-09.jpg

第3環要上,必須第1環下
(目的:第4環要下)此時可上第3環
(目的:第4環要下)
    (10)
http://simonsays-tw.com/web/NineLinkedRings/5rings-10.jpg
    (11)
http://simonsays-tw.com/web/NineLinkedRings/5rings-11.jpg

第2環要下,所以第1環要上
(目的:第4環要下)第2環下(目的:第4環要下)

有沒有發現,步驟07到11,相當於把1到3個環全上的方式
而目前狀態可看成4個環全下的狀態
這是一個遞迴的狀態,相當於下完第5環後,
再把1到3環全上,然後變成4個環全下的遞迴
    (12)
http://simonsays-tw.com/web/NineLinkedRings/5rings-12.jpg
    (13)
http://simonsays-tw.com/web/NineLinkedRings/5rings-13.jpg

第1環下
(目的:第4環要下)可以下第4環了
    (14)http://simonsays-tw.com/web/NineLinkedRings/5rings-14.jpg
    (15)http://simonsays-tw.com/web/NineLinkedRings/5rings-15.jpg

要下第3環必須第2環上,第2環要上,必須第1環上
(目的:第3環要下)第2環上
(目的:第3環要下)
    (16)
http://simonsays-tw.com/web/NineLinkedRings/5rings-16.jpg
    (17)
http://simonsays-tw.com/web/NineLinkedRings/5rings-17.jpg

第1環下(目的:第3環要下)

3環全下的遞迴狀態可以下第3環了
    (18)
http://simonsays-tw.com/web/NineLinkedRings/5rings-18.jpg
    (19)
http://simonsays-tw.com/web/NineLinkedRings/5rings-19.jpg

第2環要下,必須第1環要上
(目的:第2環要下)第2環下 (目的:第2環要下)

2環全下的遞迴狀態
    (20)
http://simonsays-tw.com/web/NineLinkedRings/5rings-20.jpg
    (21)
http://simonsays-tw.com/web/NineLinkedRings/5rings-21.jpg

第1環下
(目的:第1環要下)完成


    遞迴解說:

      由上面的例子可看出:

      (1) 步驟01到05,相當於3個環全下的方式 。
      (2) 步 驟06為,放下第5環。
      (3) 步驟07到11,相當於3個環全上的方式。
      (4)步驟12開始,變成 4個環全下的遞迴。

    推廣到 N 連環全下,其遞迴步驟為:


      
(1)http://simonsays-tw.com/web/NineLinkedRings/ring1..N-2down.jpg


1至N-2個環全下


(2)http://simonsays-tw.com/web/NineLinkedRings/ringNdown.jpg


取下第N環

(3)http://simonsays-tw.com/web/NineLinkedRings/ring1..N-2up.jpg


1至N-2個環全上,
此時為 N-1連環全下的遞迴狀態


(4)
http://simonsays-tw.com/web/NineLinkedRings/ring1..N-1down.jpg


1至N-1個環全下

    推廣到 N 連環全上,其遞迴步驟為:


      
(1)
http://simonsays-tw.com/web/NineLinkedRings/ring1..N-1up.jpg


1至N-1個環全上

(2)
http://simonsays-tw.com/web/NineLinkedRings/ringNdown.jpg


1至N-2個環全下

(3)
http://simonsays-tw.com/web/NineLinkedRings/ring1..N-2down.jpg


放 上第N環,
此時為 N-2連環全上的遞迴狀態

(4)
http://simonsays-tw.com/web/NineLinkedRings/ring1..N-2up-1.jpg


1至N-2個環全上


張智凱@FB 發表於 2016-6-6 10:41:47

玩實體比較清楚自己做的動作...

謝任雯@G 發表於 2018-1-2 11:32:07

要拆九連環要最先取下第九個,所以要先把前七個取下剩第八跟第九個在手把上就能把第九個取下,
要取下第八個要把前六個取下剩第七跟第八個在手把上就能把第八個取下,
以此類推全部就能破解了
頁: [1]
查看完整版本: 九連環

e-mai: leeys@uTaipei.edu.tw, 以及leeys@go.uTaipei.edu.tw 電話02-23113040#1904, 或1913(系辦劉俐均)