看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《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
firejox:附一下判斷 http://codepad.org/0saiNaDq 04/25 23:09
xatier:GJ! 04/26 07:22
xatier:不過學弟的排版 = =||| 04/26 07:23