我在做任務時遇到了一些麻煩,並想知道如果有人能指出我在正確的方向。該項目是八個女王的任務,我需要使用遞歸來製作一個程序,以找到一個解決方案,在這個解決方案中,8個女王可以放在板上而不會互相攻擊。卡在EightQueens Java
我的輸出保持返回是這樣的:
false, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
true, false, false, false, false, false, false, false,
這不是一個有效的解決方案。這是我迄今爲止的checkVertical代碼。
public static boolean checkVerticals(boolean[][] board){
for (int i=0; i<board.length;i++){
int count = 0;
for (int j=0; j<board.length;j++){
if (board[j][i] = true)
count++;
}
if (count > 1) {
return false;
}
}
return true;
}
你能解釋一下八個皇后的概念?他們什麼時候攻擊海誓山盟? – CloudyMarble