Завдяки нещодавньому виклику MD XF , тепер ми можемо читати паролі на багатьох різних мовах! Проблема в тому, що зараз нам потрібно портувати наші програми на мобільні пристрої, і вони роблять введення пароля дещо інакше.
Виклик
- Прочитайте рядок з клавіатури.
- Щоразу при
kвведенні символу відображайте його на короткий проміжок часу. - Після того, як пройшов інтервал часу АБО користувач ввів інший символ, замініть його
kдеяким символомc.
Правила
cповинні бути постійними; це повинен бути той самий персонаж.cможе бути будь-яким видимим символом (тобто він не може бути новим рядком, пробілом, вкладкою або недрукувальним).cне може базуватися на введених данихk;cповинні бути визначені / постійні до першогоkчитання.cповинні бути однаковими при кожному запуску програми.cможе бути одним із значень, заданихkненаче випадково, дотримуючись усіх інших правил.- Ви повинні надрукувати
kв режимі реального часу. Як тільки користувач вводить новеk, ви повинні негайно відобразити його. kмає бути видно кінцевому користувачеві перед тим, як його змінитиc; інтервал часу не повинен бути менше 0,5 секунди.kйого слід замінити наcрозумний термін; інтервал часу не повинен перевищувати 5 секунд.- Як тільки вводиться новий символ, або не закінчився інтервал часу, ви повинні замінити
kзcі використовувати введений ключ як новіkнегайно. - Дозволено очищати та перемальовувати екран щоразу, коли потрібно змінити символ.
- Ви можете використовувати будь-які обґрунтовані методи введення та виведення до тих пір, доки дотримуються всі інші правила.
- Ви можете припустити, що кількість введених символів ніколи не перевищує ширину вікна терміналу / графічного зображення.
- Якщо ви користуєтесь терміналом, ваша програма повинна завершитися після введення нової лінії або досягнення EOF.
- Ваша програма повинна функціонувати так, як зазначено тут, як у мобільному, так і в інших середовищах.
- Ваша програма може припустити, що вхід буде містити лише символи для друку (літери, цифри, символи) та, можливо, завершальний новий рядок (відсутність зворотної області, клавіші зі стрілками, видалення тощо).
- Ваша програма може закінчитися, якщо натиснути Ctrl + C.
- Ви можете припинити програму, закривши вікно, якщо програма запущена.
Оцінка балів
Це код-гольф , тому найкоротша відповідь на кожній мові виграє!
Приклад
Ось приклад того, як це має виглядати. Зауважте, що це записано на мобільній платформі, але також має працювати на настільній платформі.
Для тих, хто може бачити видалені публікації, ось
—
musicman523
Яку клавіатуру ви використовуєте у відео?
—
Бета-розпад
@BetaDecay повідомлення в кінці повідомляє zenui клавіатура
—
ов
@BetaDecay Це насправді клавіатура ZenUI. Просто цікаво, чи це має значення?
—
musicman523
@ musicman523 Просто цікаво :)
—
бета-розпад
