[問題] 關於這份程式碼 (八皇后)

看板C_and_CPP作者 (嗚啦啦)時間15年前 (2010/03/26 01:00), 編輯推噓6(607)
留言13則, 8人參與, 最新討論串1/2 (看更多)
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) 前情提要: 前幾天一直看到有人問八皇后的問題 小弟有幸也在前幾天 寫usaco時也遇到相同問題 (現在已經解決) 只是和普通的八皇后題目不太一樣 執行時間要求在一秒內完成 而最後一份測資要求13*13的盤面上 要放上13個皇后 (小弟dfs用位元計算 耗時1.X秒) 某位強悍的對岸同胞 為此 提供了一份教學 http://www.matrix67.com/blog/archives/266 (簡體字) 暫不理會他的程式碼不是用C/C++寫的 他對那段程式碼的解說 (不是下方格雷碼的部份) 我實在不是很懂 有人能提供一些見解嗎!? 小弟也想進入八奇的思考領域 (是什麼樣的演算法能幾十行就解決 重點是居然才花0.3秒!?) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.76.190

03/26 01:02, , 1F
看不懂亂推....XD
03/26 01:02, 1F

03/26 01:03, , 2F
那個是用位元運算解決檢查的問題...
03/26 01:03, 2F

03/26 01:08, , 3F
我的程式碼也是用位元運算來比較 但卻比他多好幾秒
03/26 01:08, 3F

03/26 01:12, , 4F

03/26 01:54, , 5F
gray code O_O 好妙 沒想到可以用到 n-queen
03/26 01:54, 5F

03/26 07:40, , 6F
不理解他說"調用test(0,0,0) sum值就是解數"什麼意思...
03/26 07:40, 6F

03/26 07:40, , 7F
找n后問題的答案到底是找總數還是找排列的情況?
03/26 07:40, 7F

03/26 07:41, , 8F
程式是Pascal,sum看起來是突然冒出來的,這......
03/26 07:41, 8F

03/26 07:45, , 9F
哦哦哦,sum是一個全域變數,找到解就加1
03/26 07:45, 9F

03/26 12:48, , 10F
那對岸同胞竟然是個中文系的學生..太強大了ORZ..
03/26 12:48, 10F

03/26 17:14, , 11F
我的時間是0.119s 位元運算加對稱,程式碼在我網站。
03/26 17:14, 11F

03/26 17:15, , 12F
不過這個網頁我有看過,用葛雷碼很有創意,我的是老梗。
03/26 17:15, 12F

03/26 21:15, , 13F
以後看到位元運算就要想到葛雷碼...
03/26 21:15, 13F
文章代碼(AID): #1BgvQg6G (C_and_CPP)
文章代碼(AID): #1BgvQg6G (C_and_CPP)