Cats & Dogs #238: 10x10 Grid Puzzle (Hard)

hard

Tap a square: 🐱 cat → 🐶 dog → clear

0 / 100 · 0:00
🐱 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.

  1. The × clue between R7C9 and R7C10 means they are different. R7C9 is a cat, so R7C10 is a dog.
  2. R1C8 and R2C8 are both dogs, so R3C8 must be a cat (no three in a row).
  3. Imagine R1C7 were a dog: following the rules from there soon forces a contradiction, so R1C7 must be a cat.
  4. The = clue between R1C7 and R2C7 means they are the same. R1C7 is a cat, so R2C7 is a cat.
  5. R1C7 and R2C7 are both cats, so R3C7 must be a dog (no three in a row).
  6. Imagine R8C2 were a cat: following the rules from there soon forces a contradiction, so R8C2 must be a dog.
  7. The = clue between R8C2 and R8C3 means they are the same. R8C2 is a dog, so R8C3 is a dog.
  8. The × clue between R8C3 and R9C3 means they are different. R8C3 is a dog, so R9C3 is a cat.
  9. R8C2 and R8C3 are both dogs, so R8C1 must be a cat (no three in a row).
  10. The × clue between R8C1 and R7C1 means they are different. R8C1 is a cat, so R7C1 is a dog.
  11. The = clue between R7C1 and R7C2 means they are the same. R7C1 is a dog, so R7C2 is a dog.
  12. R7C1 and R7C2 are both dogs, so R7C3 must be a cat (no three in a row).
  13. R7C3 and R7C4 are both cats, so R7C5 must be a dog (no three in a row).
  14. The × clue between R7C5 and R8C5 means they are different. R7C5 is a dog, so R8C5 is a cat.
  15. R8C2 and R8C3 are both dogs, so R8C4 must be a cat (no three in a row).
  16. R8C4 and R8C5 are both cats, so R8C6 must be a dog (no three in a row).
  17. The × clue between R8C6 and R9C6 means they are different. R8C6 is a dog, so R9C6 is a cat.
  18. R5C1 and R7C1 are both dogs with one square between them, so R6C1 must be a cat.
  19. R7C2 and R8C2 are both dogs, so R6C2 must be a cat (no three in a row).
  20. R6C1 and R6C2 are both cats, so R6C3 must be a dog (no three in a row).
  21. R7C2 and R8C2 are both dogs, so R9C2 must be a cat (no three in a row).
  22. The = clue between R9C2 and R10C2 means they are the same. R9C2 is a cat, so R10C2 is a cat.
  23. R9C2 and R9C3 are both cats, so R9C1 must be a dog (no three in a row).
  24. R9C2 and R9C3 are both cats, so R9C4 must be a dog (no three in a row).
  25. The × clue between R9C4 and R10C4 means they are different. R9C4 is a dog, so R10C4 is a cat.
  26. R7C4 and R8C4 are both cats, so R6C4 must be a dog (no three in a row).
  27. R6C3 and R6C4 are both dogs, so R6C5 must be a cat (no three in a row).
  28. Imagine R7C6 were a dog: following the rules from there soon forces a contradiction, so R7C6 must be a cat.
  29. Imagine R6C6 were a cat: following the rules from there soon forces a contradiction, so R6C6 must be a dog.
  30. Imagine R6C7 were a dog: following the rules from there soon forces a contradiction, so R6C7 must be a cat.
  31. The = clue between R6C7 and R6C8 means they are the same. R6C7 is a cat, so R6C8 is a cat.
  32. R6C7 and R6C8 are both cats, so R6C9 must be a dog (no three in a row).
  33. Row 6 already has its 5 cats, so R6C10 must be dogs.
  34. R6C10 and R7C10 are both dogs, so R5C10 must be a cat (no three in a row).
  35. R6C10 and R7C10 are both dogs, so R8C10 must be a cat (no three in a row).
  36. The = clue between R8C10 and R9C10 means they are the same. R8C10 is a cat, so R9C10 is a cat.
  37. R8C10 and R9C10 are both cats, so R10C10 must be a dog (no three in a row).
  38. Imagine R4C7 were a cat: following the rules from there soon forces a contradiction, so R4C7 must be a dog.
  39. R3C7 and R4C7 are both dogs, so R5C7 must be a cat (no three in a row).
  40. The = clue between R5C7 and R5C6 means they are the same. R5C7 is a cat, so R5C6 is a cat.
  41. R5C6 and R5C7 are both cats, so R5C5 must be a dog (no three in a row).
  42. R5C6 and R5C7 are both cats, so R5C8 must be a dog (no three in a row).
  43. R5C7 and R6C7 are both cats, so R7C7 must be a dog (no three in a row).
  44. Row 7 already has its 5 dogs, so R7C8 must be cats.
  45. R6C8 and R7C8 are both cats, so R8C8 must be a dog (no three in a row).
  46. R8C6 and R8C8 are both dogs with one square between them, so R8C7 must be a cat.
  47. Row 8 already has its 5 cats, so R8C9 must be dogs.
  48. R8C9 and R9C9 are both dogs, so R10C9 must be a cat (no three in a row).
  49. Column 7 already has its 5 cats, so R9C7 must be dogs.
  50. R9C7 and R9C9 are both dogs with one square between them, so R9C8 must be a cat.
  51. Row 9 already has its 5 cats, so R9C5 must be dogs.
  52. Column 7 already has its 5 cats, so R10C7 must be dogs.
  53. Imagine R1C9 were a dog: following the rules from there soon forces a contradiction, so R1C9 must be a cat.
  54. Imagine R2C9 were a dog: following the rules from there soon forces a contradiction, so R2C9 must be a cat.
  55. The × clue between R2C9 and R2C10 means they are different. R2C9 is a cat, so R2C10 is a dog.
  56. Imagine R1C10 were a dog: following the rules from there soon forces a contradiction, so R1C10 must be a cat.
  57. Imagine R3C5 were a dog: following the rules from there soon forces a contradiction, so R3C5 must be a cat.
  58. The = clue between R3C5 and R4C5 means they are the same. R3C5 is a cat, so R4C5 is a cat.
  59. R3C5 and R4C5 are both cats, so R2C5 must be a dog (no three in a row).
  60. Imagine R1C6 were a cat: following the rules from there soon forces a contradiction, so R1C6 must be a dog.
  61. The × clue between R1C6 and R2C6 means they are different. R1C6 is a dog, so R2C6 is a cat.
  62. Imagine R1C5 were a dog: following the rules from there soon forces a contradiction, so R1C5 must be a cat.
  63. Column 5 already has its 5 cats, so R10C5 must be dogs.
  64. R10C5 and R10C7 are both dogs with one square between them, so R10C6 must be a cat.
  65. Column 6 already has its 5 cats, so R3C6 and R4C6 must be dogs.
  66. R4C6 and R4C7 are both dogs, so R4C8 must be a cat (no three in a row).
  67. The × clue between R4C8 and R4C9 means they are different. R4C8 is a cat, so R4C9 is a dog.
  68. R3C9 and R4C9 are both dogs, so R5C9 must be a cat (no three in a row).
  69. Column 8 already has its 5 cats, so R10C8 must be dogs.
  70. Row 10 already has its 5 dogs, so R10C1 must be cats.
  71. Imagine R1C1 were a cat: following the rules from there soon forces a contradiction, so R1C1 must be a dog.
  72. The × clue between R1C1 and R1C2 means they are different. R1C1 is a dog, so R1C2 is a cat.
  73. Row 1 already has its 5 cats, so R1C3 and R1C4 must be dogs.
  74. Imagine R2C2 were a cat: following the rules from there soon forces a contradiction, so R2C2 must be a dog.
  75. Imagine R2C3 were a dog: following the rules from there soon forces a contradiction, so R2C3 must be a cat.
  76. Imagine R2C1 were a cat: following the rules from there soon forces a contradiction, so R2C1 must be a dog.
  77. R1C1 and R2C1 are both dogs, so R3C1 must be a cat (no three in a row).
  78. Row 2 already has its 5 dogs, so R2C4 must be cats.
  79. Column 1 already has its 5 dogs, so R4C1 must be cats.
  80. Imagine R3C2 were a cat: following the rules from there soon forces a contradiction, so R3C2 must be a dog.
  81. R2C2 and R3C2 are both dogs, so R4C2 must be a cat (no three in a row).
  82. R4C1 and R4C2 are both cats, so R4C3 must be a dog (no three in a row).
  83. R4C2 and R6C2 are both cats with one square between them, so R5C2 must be a dog.
  84. R5C1 and R5C2 are both dogs, so R5C3 must be a cat (no three in a row).
  85. Row 5 already has its 5 cats, so R5C4 must be dogs.
  86. R5C4 and R6C4 are both dogs, so R4C4 must be a cat (no three in a row).
  87. R2C4 and R4C4 are both cats with one square between them, so R3C4 must be a dog.
  88. R3C2 and R3C4 are both dogs with one square between them, so R3C3 must be a cat.
  89. Row 3 already has its 5 dogs, so R3C10 must be cats.
  90. R3C10 and R5C10 are both cats with one square between them, so R4C10 must be a dog.

About this puzzle

This 10×10 grid starts with 8 filled squares and 18 = / × clues. It can be solved in 90 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.

More hard puzzles