Ok, here is the code that I'm still having trouble with. It returns false, even when the queen is in a safe spot, and if it's in the first column with no other queens. I'm only checking to the left, because the recursive algorithm places queens from left to right. This seems so simple, yet it doesn't want to work. Any help is appreciated, I've been going crazy trying to figure out what's wrong.

Code:bool isPathViable(int row, int column) { for(int i=column;i >= 0; --i) //Checks row { if(board[row][i]==1) return false; } for(int j=row, k=column ; row >= 0, column >= 0;--row, --column) //Checks left and up diagonal { if(board[j][k]==1) return false; } for(int u=row, h=column ;row >= 0,column >= 0;++row,--column) //Checks left and down diagonal { if(board[u][h]==1) return false; } return true; }