41 comments

[ 102 ms ] story [ 1389 ms ] thread
Really nice but I wish I didn't have to click "Check" every time after moving the pieces. It could do that automatically.
I think that's intentional as in chess you're supposed to come up with the solution without feedback. The puzzle predates computers.
Neat. Surprisingly, there are 388 solutions, and a lot of them look rather unintuitive.

    ........
    ...Q....
    ........
    ........
    .....Q..
    ........
    ........
    Q..B..Q.

    Q.......
    ........
    ........
    ........
    ..QQB..Q
    ........
    ........
    ........
My original intuition was to place the queens on unique rows and columns to cover as much as possible but it turns out there are solutions with three of them on the same row.

Python script: https://gist.github.com/dllu/698d5f71b2b9735c5c462ddf4a2f6fc...

Here's how it works:

0. precompute the attack patterns of each possible queen/bishop location as a bitmask, stored as an integer

1. generate candidate solutions, allowing attack rays to pass through other pieces, by brute forcing the positions of the 5 pieces and taking the bitwise OR of their attacks

2. out of the candidate solutions, check which ones are actually valid taking into account occlusion. Actually, you only need to check if the queen's horizontal attack is blocked by the bishop, as queens cannot block each other (the blocking queen herself has the same attacks so they effectively pass through each other).

I also tried the "place the queens on unique rows and columns".

That got me down to 6 free spaces.

More fun facts:

After identifying solutions up to rotation and reflection there are only 49 solutions. No solutions have rotational symmetry, and there is exactly one solution with reflection symmetry (already mentioned by an earlier commenter).

Out of the 49 solution classes, there are 18 distinct queen layouts. The layouts have between 1 and 5 ways to place the bishop to complete the solution. Interestingly, there is exactly one queen layout (up to rotation / reflection) for which there are exactly 2 ways to place the bishop to complete the puzzle.

It's a bit disappointing, then, that the page's action on clicking the "solution" button is just to set the pieces to:

    const solution = {
      a8: "b1",
      b8: "q1",
      f7: "q2",
      a4: "q3",
      e3: "q4"
    };
It would be cool if it randomly selected one of those 388, so you could click repeatedly and develop an intuition for what kinds of distributions were a valid solution.
yeah i had that same intuition and then realized that you _have_ to have pieces that overlap responsibility to fully “cover”. amazing puzzle. i can’t claim i solved it, because i didn’t, but i did give it 15 minutes of focused time, which is pretty good.
That was an experience. Thank you
> The task is to place four black queens and one black bishop on the chessboard so that there is no square not under their attack. In other words, after arranging the five black pieces, it must be impossible to place the white king anywhere without it being in checkmate.

That last word should be "check". not "checkmate". A king next to an unprotected queen will be in check but not checkmate as it can capture the queen.

That assumes you can place the king on the board and move immediately. I think the puzzle assumes you can’t do that; that placing your king on the board is your move, thus ending your turn.
well there are all sorts of irregularities in the stated puzzle, since you cannot move into check or checkmate it follows that you should not be able to place it on the board and have it be in those conditions.

However let us suppose that you can place it on the board and have it be in either check or checkmate.

If it has been placed on the board and it is in check, since it cannot move into check it follows that it is the king's move. If it can move out of check by taking a piece or another way of moving it is not in checkmate, this seems a pretty weird trick then, because it is not so interesting that you can place the king on the board and it will be in check and it is the king's move to get out of check.

If it can get out of check by taking an unprotected queen then it is again not very interesting, and why would I not just put the king on one of those positions and take the queen from the first.

If I cannot put it on the board without it being in checkmate, it must mean that the placing it on the board is itself the move, and you cannot move into checkmate, but if placing it on the board is the move then it follows you can take a queen with that move if you can place the king anywhere on the board.

The phrasing of the puzzle is inadequate, it seems.

Wait, the instructions are a little ambiguous. I clicked "Solution" and it has the dark-squared bishop on a white square! XD

Should maybe update the instructions to clarify that the dark-squared bishop is not constrained to dark squares.

fun demo. could be a daily puzzle combining various commenter suggestions. There are (didn't verify personally) 388 solutions. The daily puzzle could remove 1+ pieces and ask for a 1+ move guess.

Also a click on a square could auto place a queen and a second click would swap to the bishop. Every click could auto-check.

A separate discovery mode could start blocking out the squares visually as you place pieces. For a lot of people, that would be easier than the mental representation.

I've definitely seen this puzzle before. of course I can't recall where
I solved it with this, a pleasingly symmetric solution. I was surprised that a solution exists with all the queens in a row.

    . . . . . . . .
    . . . . . . . Q
    . . B . . . . .
    . . . . . Q . .
    . . . . . . . .
    . . . Q . . . .
    . . . . . . . .
    . Q . . . . . .
I started with 4 queens placed symmetrically on c7,g6,f2,b3, which covers everything except corners. Then I shifted all of them diagonally, i.e. to d6,h5,g1,c2. And it turns out, then only a8 and b7 are not covered, which can be easily solved by placing bishop anywhere at diagonal, e.g. h1.
> In other words, after arranging the five black pieces, it must be impossible to place the white king anywhere without it being in checkmate.

I think this is a bit ambiguous and, strictly speaking, wrong for the solution as given.

In particular, this asks for the king to be in check _mate_. Does this require all black pieces to defend each other? Otherwise, white king on the board would not be in checkmate if you place it next to a queen and can immediately capture.

From the solution, you can see it's not a checkmate requirement, just a check requirement.

Please don’t use red and green for the colors in the “check” mode, it’s hard to tell apart for colorblind people (especially against the partially shaded black squares).

In fact, there isn’t really a need for two colors. Just color the squares that are threatened by the pieces and leave the rest blank. The meaning will be obvious.

> The task is to place four black queens and one black bishop on the chessboard so that there is no square not under their attack

> In other words, after arranging the five black pieces, it must be impossible to place the white king anywhere without it being in checkmate.

These two sentences mean very different things in the normal rules of chess. And if you replace the word “checkmate” with the word “check” in the second sentence it still doesn’t mean the same thing as the first sentence.

The first sentence implies that all the pieces must be defended.

Edit: Eh, I guess it depends on how you view the word “attack” since all the pieces are the same colour.

The solutions that look like a pinwheel are oddly satisfying, that was a fun little exercise. Thanks OP, I needed that diversion.
The trick for me was to place a queen (most anywhere, but start with a corner it’s easier), then check and look for the spot with the most reds around it (eg 9, or 8, or 7), place the next queen there, repeat. Then place the bishop as needed.

The key was realizing the proximal spaces next to the placed queen are the most important to cover. Forget about trying to have a long reach, it comes naturally.

Wow, this is really the cheatsheet of this game! It worked like a charm! Appreciate it
What's the logic for putting the initial queen in a corner rather than using the same heuristic as for the remaining places?
Yes! This is the strategy that worked for me as well.
I've been playing a lot of Go lately and it's lowkey ruined chess for me. I ended up uninstalling Lichess because I simple don't use it anymore. Nothing against chess, just my personal taste.

My friend code on BadukPop is EGVNY if anyone wants to play together!

I got it down to one, and then remembered I'm not a great chess player
Pleased to find a good looking solution

    ...Q....
    .......Q
    ........
    ........
    ..Q.....
    ......Q.
    ........
    B.......
edit: Its almost the exact same solution to the one provided lol
I took quite some time with this, but I found it a hard one! Nice job :-)
Thanks for this OP. Really enjoyed finding solutions, and of course reading comments about all crazy looking solutions as well. This is the stuff that keeps me hooked to HN!

I remember being given another puzzle in my childhood, where the task was to put 8 queens on the board and none of them should "see" each other. Wonder how many solutions exist for that one..

ETA: Apparently it's a classic puzzle, and there are 92 solutions - https://en.wikipedia.org/wiki/Eight_queens_puzzle

> This is one of the most difficult among those problems.

I didn’t find it that difficult. A good (?) guess is that the queens would be in (rotational) symmetry, and hence form a square. To maximize coverage, the angle of course is neither 90° nor 45°, and the queens will have a minimum distance of 3 from each other. Going from smallest distance possible between queens to largest, one tries (3, 1), (3, 2), (4, 1), done. One might not notice that (4, 1) works (which happened to me), because it only works when the square is at the edge of the playing field. But the next one, (4, 2), works unconditionally. Or going from largest to smallest, one tries (6, 1), (5, 2), (5, 1), (4, 3), (4, 2), done.

A related puzzle - find a solution using a standard set of chess pieces minus the pawns. So a king, a queen and a pair of rooks, bishops and knights. That seems like a fun puzzle given a standard set of chess pieces. And to remove any doubt - it is a solvable! You can even remove one bishop and still find a solution, but that seems to be the only piece you can do it without.
This is an interesting test for LLMs.

- ChatGPT was able to solve it in 6 seconds.

- Opus exhausted my entire days token limit on the problem & didn’t solve it.

(comment deleted)