我在玩棋盤代表棋盤並檢查合法移動。我堅持的是計算滑動片攻擊中源和目標方格之間的佔用率。 我不想通過查找來做到這一點,所以我想弄清楚是否有可能在沒有查找的之間的方塊上得到一個蒙版。例如,在下面的板子上有C4一個魯克:獲取位面板的佔用位掩模
8 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
4 0 0 R 0 0 0 0 0
3 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0
a b c d e f g h
給出一個棋盤,代表空方(或佔用廣場,無論是更容易)和僞有效舉措Rf4表示(魯克可以從C4移動到f4),如何爲方塊d4-e4(不包括源和目的方塊)獲取遮罩?
我認爲,一旦這是清楚的比豎直移動將是容易的,並且可以通過使用旋轉的棋盤來計算對角移動。
編輯:位板用ulong/unsigned int64表示,每個8位數據包代表實際電路板的等級/行。
如果你無論如何要對位棋盤,不要浪費時間重複產生它們。只有1953種方法可以在棋盤上選擇兩根繩子。你可以輕鬆地將它們存儲在一個數組中。 –