Добавление одной цифры (0-9) к последовательности / строке создает новый 4-значный номер

Я пытаюсь найти алгоритм, который "нарушает безопасность". набрав клавиши 0-9. Код состоит из 4 цифр. Сейф будет открыт, где он идентифицирует код как подстроку набора текста. то есть, если код "3456"; поэтому при следующем наборе будет открыт сейф: «123456». (Это просто означает, что сейф не перезапускается через каждые 4 нажатия клавиш).

Существует ли алгоритм, который каждый раз, когда он добавляет одну цифру в последовательность, создает новый номер из 4 цифр (новые комбинации из последних 4 цифр последовательности \ строки)?

спасибо км

Редактирование (я выложил это много лет назад): Вопрос состоит в том, чтобы убедиться, что каждый раз, когда я устанавливаю вход (одну цифру) в сейф, я генерирую новый 4-значный код, который не был сгенерирован ранее. Например, если сейф получает двоичный код длиной 3 цифры, то это должна быть моя входная последовательность:

0001011100 

Потому что для каждого ввода я получаю новый код (длиной 3 цифры), который не был сгенерирован ранее:

000 -> 000
1 -> 001
0 -> 010
1 -> 101
1 -> 011
1 -> 111
0 -> 110
0 -> 100

Ответы на вопрос(3)

Ваш ответ на вопрос