Для ненулевых цифр на стандартной цифровой клавиатуре
789
456
123
рассмотрите возможность размещения шахматного рыцаря на любую цифру и перемещайте его с любым количеством нормальных L-образных прыжков, отслеживая положительное десятичное целое число. Какие натуральные числа можно выразить таким образом?
Один из них 38
, так как рыцарь мог начать с 3
и двигаться влево и вверх к 8
. 381
и 383
тоже возможно.
3
само по себе возможно, если прыжки не предпринимаются (что разрешено). 5
также, но никакие другие цифры не могут быть получены из 5
, так что это единственное число, где 5
появляется цифра .
Напишите программу или функцию, которая принимает положительное десятичное целое число (при желании вы можете взять его в виде строки) и печатать или возвращать истинное значение, если число может быть выражено рыцарем на цифровой клавиатуре описанным способом, но в противном случае выводит falsy значение.
Самый короткий код в байтах побеждает. Tiebreaker является более ранним ответом
Примеры
Truthy:
1, 2, 3, 4, 5, 6, 7, 8, 9, 16, 18, 38, 61, 81, 294, 349, 381, 383, 729, 767, 38183, 38383, 18349276, 183492761, 618349276
Falsy:
10, 11, 50, 53, 55, 65, 95, 100, 180, 182, 184, 185, 186, 187, 188, 189, 209, 305, 2009, 5030, 3838384, 4838383, 183492760
78963214
, повторяется снова и снова. Посчитайте расстояния - это всегда четыре, так или иначе. Я должен был быть более ясным и прямо сказал, что вы должны написать это в порядке круга.
123...9
. Извините