Snake Number Challenge
Интересно, сколько змеевых чисел существует от 1 до 50000?
Змеиные цифры в этой игре - это числа, которые можно набирать на традиционной цифровой клавиатуре (формат ниже), перемещая одну клавишу вверх, вниз, влево или вправо.
7 8 9
4 5 6
1 2 3
0
Например, если вы начнете с цифры 5, вы можете выбрать 4, 6, 8 или 2 в качестве следующего допустимого шага - однако 7, 3, 9 и 1 являются недопустимыми, поскольку они расположены по диагонали к текущей клавише. , Итак, если у вас есть 5, то 2, ваш следующий жизнеспособный выбор ключа снова будет 0, 1, 3 или 5.
В этом упражнении Code Golf вы должны вывести список всех положительных чисел от 1 до 50k, а также окончательное количество всех чисел, которые соответствуют критерию.
правила
- Числа не могут начинаться с нуля.
- Числа должны быть целыми положительными целыми числами.
- Каждый последовательный номер, читаемый слева направо, должен «змейиться» вокруг цифровой клавиатуры.
- Змея не может путешествовать по диагонали через ключи
- Номер 0 доступен как из номеров 1, так и из 2.
- Числа не могут быть соединены (например: 22)
Примеры действительных номеров змеи:
12369
45201
1254
10102
1
12
987
Примеры неверных номеров
1238 - 8 is not connected
0001 - multiple leading 0s
0101 - leading 0
159 - snake cannot travel diagonally
4556 - duplicate 5
В соответствии с нормой Code Golfs, цель - наименьшее количество байтов!
Согласно моей математике и правилам, в вашем списке должно быть 670 действительных чисел змеи, а само 670 напечатано как последнее число.