作者firejox (Tangent)
看板C_and_CPP
標題Re: [問題] 古老的堆疊迷宮問題...不過
時間Mon Apr 25 22:22:29 2011
※ 引述《god800606 (hunter)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: C++
: 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
: http://codepad.org/qq7QtoR9
: 問題(Question):
: 之前都用 "1" "0" 來表示牆壁與門~
: 可是這次要用十進位的方式來表示 ~"~
: 也就是說 比如
: 12 11 12 13
: 5 9 2 4
: 1 0 12 5
: 7 7 3 2
: 他的圖就是
: -----------
: |-- | |
: | | -- |
: | | |
: | |
: -----------
: 將十進位轉成二進位 ex 9=>1001 依照順序北牆東門南門西牆
: 我的問題就出在
: 要怎麼先做 運算 並比較 每個node間有沒有矛盾後
: 再開始走迷宮....
: 可以請熱心的朋友們教一下嗎?
: 是否要用到sparse matrice 會比較方便?
: 謝謝
: 預期的正確結果(Expected Output):
: +-+-+-+-+
: 1 *| | |
: + +-+-+-+
: 2|*| |
: + +-+-+-+
: 3|* * *| |
: + + + + +
: 4| | |* *
: +-+-+-+-+
就問題而言 每個數字介於0~15之間
而每個值都可以用位元運算去做
就
11
5 9 2
0
而言
北
(&8) 北
(&8)
1 1
(&1)西1 9 0東
(&4) (&1)西1 11 0東
(&4) .....
0 1
南
(&2) 南
(&2)
所以依此類推
你就可以判斷了
搜尋也相同....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.240.128.241
推 god800606:got it ! thx! 04/25 23:02
推 xatier:GJ! 04/26 07:22
→ xatier:不過學弟的排版 = =||| 04/26 07:23