Нужна помощь в построении эффективного алгоритма исчерпывающего поиска

Есть 10 кнопок. Эти кнопки могут разблокировать замок при нажатии в правильном порядке (5 нажатий в последовательности). Каждое нажатие кнопки запускает проверку разблокировки.

Пример: & quot; пароль & quot; 123456 и я нажимаю кнопки 0 1 2 3 4 5 6 Я разблокирую блокировку от 6-го нажатия кнопки.

Мне нужно спроектировать алгоритм, который пробует все возможные комбинации наиболее эффективным способом (т.е. нужно нажимать минимальное количество кнопок).

Я могу интерпретировать номер кнопки как цифру, а номер нажатой кнопки последовательно как позицию цифры, а затем пробовать все комбинации 99999, чтобы разблокировать замок, но я чувствую, что для этого есть более эффективный алгоритм.

Что я могу сделать, чтобы оптимизировать этот поиск?

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

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