Cats & Dogs #231: 10x10 Grid Puzzle (Hard)
hardTap a square: 🐱 cat → 🐶 dog → clear
🐱 5 cats and 🐶 5 dogs in every row and column
= same × different
Fill the 10x10 grid with cats and dogs so that every row and every column has exactly 5 of each, and never more than two of the same animal side by side.
- Exactly 5 cats and 5 dogs in every row and every column.
- Never three of the same animal in a row, across or down.
- An = between two squares means the same animal; a × means different animals.
🐶
🐱
🐶
🐶
🐱
🐱
🐶
🐶
🐱
🐱
🐶
🐶
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐱
🐱
🐶
🐱
🐱
🐶
🐱
🐶
🐱
🐶
🐶
🐱
🐱
🐶
🐶
🐱
🐶
🐱
🐶
🐶
🐱
🐶
🐶
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐱
🐶
🐱
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐶
🐶
🐶
🐶
🐱
🐶
🐱
🐶
🐱
🐶
🐱
🐱
🐱
🐱
🐶
🐱
🐶
🐶
🐱
🐱
🐶
🐶
🐱
🐶
🐱
🐱
🐶
🐱
🐶
🐱
🐶
🐶
Step-by-step solution
Squares are written as R<row>C<column>, counting from the top-left.
- The = clue between R6C1 and R5C1 means they are the same. R6C1 is a dog, so R5C1 is a dog.
- The × clue between R8C3 and R9C3 means they are different. R8C3 is a cat, so R9C3 is a dog.
- R5C1 and R6C1 are both dogs, so R4C1 must be a cat (no three in a row).
- The = clue between R4C1 and R4C2 means they are the same. R4C1 is a cat, so R4C2 is a cat.
- R4C1 and R4C2 are both cats, so R4C3 must be a dog (no three in a row).
- R5C1 and R6C1 are both dogs, so R7C1 must be a cat (no three in a row).
- R8C6 and R9C6 are both dogs, so R7C6 must be a cat (no three in a row).
- R6C6 and R7C6 are both cats, so R5C6 must be a dog (no three in a row).
- R8C6 and R9C6 are both dogs, so R10C6 must be a cat (no three in a row).
- Imagine R1C3 were a cat: following the rules from there soon forces a contradiction, so R1C3 must be a dog.
- The = clue between R1C3 and R1C4 means they are the same. R1C3 is a dog, so R1C4 is a dog.
- R1C3 and R1C4 are both dogs, so R1C5 must be a cat (no three in a row).
- Imagine R4C10 were a dog: following the rules from there soon forces a contradiction, so R4C10 must be a cat.
- The = clue between R4C10 and R5C10 means they are the same. R4C10 is a cat, so R5C10 is a cat.
- R4C10 and R5C10 are both cats, so R3C10 must be a dog (no three in a row).
- R3C9 and R3C10 are both dogs, so R3C8 must be a cat (no three in a row).
- R4C10 and R5C10 are both cats, so R6C10 must be a dog (no three in a row).
- The = clue between R6C10 and R7C10 means they are the same. R6C10 is a dog, so R7C10 is a dog.
- Imagine R3C6 were a dog: following the rules from there soon forces a contradiction, so R3C6 must be a cat.
- R3C6 and R3C8 are both cats with one square between them, so R3C7 must be a dog.
- Imagine R2C5 were a dog: following the rules from there soon forces a contradiction, so R2C5 must be a cat.
- The × clue between R2C5 and R2C6 means they are different. R2C5 is a cat, so R2C6 is a dog.
- The × clue between R2C5 and R3C5 means they are different. R2C5 is a cat, so R3C5 is a dog.
- Imagine R1C6 were a dog: following the rules from there soon forces a contradiction, so R1C6 must be a cat.
- R1C5 and R1C6 are both cats, so R1C7 must be a dog (no three in a row).
- R1C7 and R1C8 are both dogs, so R1C9 must be a cat (no three in a row).
- R1C7 and R3C7 are both dogs with one square between them, so R2C7 must be a cat.
- Row 1 already has its 5 cats, so R1C1 must be dogs.
- Column 6 already has its 5 cats, so R4C6 must be dogs.
- The × clue between R4C6 and R4C5 means they are different. R4C6 is a dog, so R4C5 is a cat.
- The × clue between R4C6 and R4C7 means they are different. R4C6 is a dog, so R4C7 is a cat.
- Row 4 already has its 5 cats, so R4C4, R4C8 and R4C9 must be dogs.
- R3C9 and R4C9 are both dogs, so R2C9 must be a cat (no three in a row).
- R2C7 and R2C9 are both cats with one square between them, so R2C8 must be a dog.
- R3C9 and R4C9 are both dogs, so R5C9 must be a cat (no three in a row).
- R5C9 and R5C10 are both cats, so R5C8 must be a dog (no three in a row).
- R5C6 and R5C8 are both dogs with one square between them, so R5C7 must be a cat.
- R4C7 and R5C7 are both cats, so R6C7 must be a dog (no three in a row).
- R4C8 and R5C8 are both dogs, so R6C8 must be a cat (no three in a row).
- Imagine R2C1 were a cat: following the rules from there soon forces a contradiction, so R2C1 must be a dog.
- R1C1 and R2C1 are both dogs, so R3C1 must be a cat (no three in a row).
- Imagine R3C4 were a dog: following the rules from there soon forces a contradiction, so R3C4 must be a cat.
- Imagine R5C3 were a dog: following the rules from there soon forces a contradiction, so R5C3 must be a cat.
- The × clue between R5C3 and R5C4 means they are different. R5C3 is a cat, so R5C4 is a dog.
- R5C4 and R5C6 are both dogs with one square between them, so R5C5 must be a cat.
- R4C4 and R5C4 are both dogs, so R6C4 must be a cat (no three in a row).
- R6C4 and R6C6 are both cats with one square between them, so R6C5 must be a dog.
- Row 5 already has its 5 cats, so R5C2 must be dogs.
- Imagine R6C2 were a dog: following the rules from there soon forces a contradiction, so R6C2 must be a cat.
- The = clue between R6C2 and R7C2 means they are the same. R6C2 is a cat, so R7C2 is a cat.
- R6C2 and R6C4 are both cats with one square between them, so R6C3 must be a dog.
- R7C1 and R7C2 are both cats, so R7C3 must be a dog (no three in a row).
- R6C2 and R7C2 are both cats, so R8C2 must be a dog (no three in a row).
- Row 6 already has its 5 dogs, so R6C9 must be cats.
- R5C9 and R6C9 are both cats, so R7C9 must be a dog (no three in a row).
- R7C9 and R7C10 are both dogs, so R7C8 must be a cat (no three in a row).
- R7C6 and R7C8 are both cats with one square between them, so R7C7 must be a dog.
- R6C7 and R7C7 are both dogs, so R8C7 must be a cat (no three in a row).
- R6C8 and R7C8 are both cats, so R8C8 must be a dog (no three in a row).
- Column 3 already has its 5 dogs, so R2C3 must be cats.
- R2C3 and R2C5 are both cats with one square between them, so R2C4 must be a dog.
- Column 3 already has its 5 dogs, so R3C3 must be cats.
- R3C1 and R3C3 are both cats with one square between them, so R3C2 must be a dog.
- Column 3 already has its 5 dogs, so R10C3 must be cats.
- Column 8 already has its 5 dogs, so R9C8 and R10C8 must be cats.
- R10C6 and R10C8 are both cats with one square between them, so R10C7 must be a dog.
- Column 7 already has its 5 dogs, so R9C7 must be cats.
- R9C7 and R9C8 are both cats, so R9C9 must be a dog (no three in a row).
- R7C9 and R9C9 are both dogs with one square between them, so R8C9 must be a cat.
- Column 9 already has its 5 cats, so R10C9 must be dogs.
- Imagine R2C2 were a cat: following the rules from there soon forces a contradiction, so R2C2 must be a dog.
- Row 2 already has its 5 dogs, so R2C10 must be cats.
- Column 10 already has its 5 cats, so R9C10 and R10C10 must be dogs.
- Imagine R7C4 were a dog: following the rules from there soon forces a contradiction, so R7C4 must be a cat.
- R7C4 and R7C6 are both cats with one square between them, so R7C5 must be a dog.
- R6C4 and R7C4 are both cats, so R8C4 must be a dog (no three in a row).
- R8C4 and R8C6 are both dogs with one square between them, so R8C5 must be a cat.
- Row 8 already has its 5 cats, so R8C1 must be dogs.
- Column 1 already has its 5 dogs, so R9C1 and R10C1 must be cats.
- R10C1 and R10C3 are both cats with one square between them, so R10C2 must be a dog.
- R8C2 and R10C2 are both dogs with one square between them, so R9C2 must be a cat.
- Column 4 already has its 5 dogs, so R9C4 must be cats.
- Row 9 already has its 5 cats, so R9C5 must be dogs.
- Column 4 already has its 5 dogs, so R10C4 must be cats.
- R10C3 and R10C4 are both cats, so R10C5 must be a dog (no three in a row).
About this puzzle
This 10×10 grid starts with 10 filled squares and 12 = / × clues. It can be solved in 85 steps using a "what if" trial of one square on top of the basic rules.
Watch for a gap: if the squares on either side of an empty square match, the empty one must be different.
Stuck? Open the step-by-step solution below -- each step names the squares involved, so you can use it as a hint and finish the puzzle yourself.