Строго логическое решение существует.
при 20 пустых:
SPOILER
Если a5=1 -> c5=2 -> c6=3 -> f5=3 -> e3=3 -> a1=3 -> a3=2 -> i1=2 -> i3=9 -> d1=9 -> d3=7
и на вертикали c нет места для 7. Это не подбор, а логическое исключение, т.к. проводится в уме.
Отсюда а3=1
Далее заполняем пустые.