Одним из аспектов проверки надежности пароля является запуск соседних букв на клавиатуре. В этой задаче должна быть создана программа, которая возвращает, true
если строка содержит какие-либо серии соседних букв.
Что считается серией соседних букв?
Для этой упрощенной версии тестера надежности пароля набор соседних символов составляет 3 или более букв, которые расположены рядом друг с другом в одном направлении (влево, вправо, над или под) на клавиатуре QWERTY. Для этой задачи раскладка клавиатуры выглядит следующим образом:
1234567890
QWERTYUIOP
ASDFGHJKL
ZXCVBNM
На приведенной выше диаграмме Q
ниже, 1
но не ниже 2
, поэтому строка, которая содержит 1qa
или aq1
где-либо внутри нее, будет возвращать программу true
, но 2qa
не будет.
вход
Строка пароля для проверки. Он будет содержать только символы [0-9a-z]
или [0-9A-Z]
(на ваш выбор).
Выход
Программа должна вернуть истинное значение, если пароль содержит один или несколько циклов смежных ключей, или false, если оно не содержит ни одного.
Примеры
Следующие входные данные должны вывести true:
asd
ytrewq
ju7
abc6yhdef
И эти входы должны вывести false:
abc
aaa
qewretry
zse
qwdfbn
pas
правила
- Ответы могут быть полными программами или функциями.
- Стандартные лазейки запрещены.
- Это код-гольф , выигрывает самая низкая оценка (в байтах)!
Ответы:
Pyth -
666260 байтДовольно простой подход. Проверяет, находится ли какая-либо из подстрок len 3 в любом из вращений клавиатуры. Будет использовать базовую кодировку для клавиатуры.
Тестовый пакет .
источник
Japt , 78 байт
Japt - это сокращенная версия Ja vaScri pt . переводчик
Выходы
0
для ложных случаев; в противном случае положительное целое число. Его?
следует заменить непечатаемым символом Unicode U + 0086, или, если вы просто не хотите заниматься всеми этими проблемамиas
.Как это устроено
источник
C #, 227
0 ложь, 1 правдива. Объединяет все ключи по горизонтали и вертикали и переворачивает их, а также проверяет, содержится ли в них какой-либо из трех символов ввода.
C # действительно многословен, должен погрузиться в другие языки :(
источник
PHP, 173 + 1 байт
Запустите как трубу с
-nR
вводом в нижнем регистре или попробуйте онлайн .источник
Clojure, 156 байт
Это была довольно интересная задача для реализации.
источник