Если это не правильный сайт SE для этого вопроса, пожалуйста, дайте мне знать.
Друг поделился этим вопросом интервью, который он получил по телефону, и я попытался решить его сам. Я перефразирую:
Задается значение от
pi
доn
цифр в виде строки.Как я могу найти все повторяющиеся последовательности из 4 цифр в этой строке?
Эта часть кажется довольно прямолинейной. Добавьте 4 последовательности символов в хэш-таблицу, увеличивая по одному символу за раз. Перед вставкой в хеш-таблицу проверьте, существует ли текущая последовательность из 4 символов. Если да, то вы нашли дубликат. Сохраните это где-нибудь и повторите процесс. Мне сказали, что это более-менее правильно.
У меня проблема по второму вопросу:
Какова верхняя граница?
n = 10,000,000
был примером.
Мой фон алгоритма, по общему признанию, очень ржавый. Сначала я подумал, что верхняя граница должна быть как-то связана с n, но мне сказали, что это не так.
Как мне это рассчитать?
ИЗМЕНИТЬ:
Я также был бы открыт для решения, которое игнорирует ограничение, заключающееся в том, что верхняя граница не связана с n
. Любой приемлем.