Могут ли 0 и 1 совпадать в других позициях периода Пизано, кроме первых двух позиций? Я пытаюсь решить проблему, в которой необходимо знать продолжительность периода Пизано. Итак, я думал о поиске 0 и 1 в периоде.
2 ответа
Да, если 0 и 1 смежны, вы находитесь в точке, где последовательность повторяется.
Идея быстрого доказательства: предположим, что вы нашли 0 и 1 рядом друг с другом в последовательности Фибоначчи, изменяющей некоторое число n. Другими словами, вы нашли некоторые позиции k и k + 1 в последовательности, такие что k-я позиция равна F 0 mod n, а (k + 1) -я позиция равна F 1 мод №. Это означает, что позиция k + 2 равна F 0 + F 1 = F 2 mod n, а позиция после этого равна F 1 + F 2 = F 3 mod n и т. Д. Это означает, что если вы видите 0 и 1 рядом в последовательности, то, что следует за должен быть эквивалентен последовательности чисел, которую вы бы нашли, если бы снова начали последовательность Фибоначчи с нуля.
Надеюсь это поможет!
Вот быстрый код Python для определения периода Пизано.
def pisanoPeriod(m):
previous, current = 0, 1
for i in range(0, m * m):
previous, current \
= current, (previous + current) % m
# A Pisano Period starts with 01
if (previous == 0 and current == 1):
return i + 1
Похожие вопросы
Новые вопросы
math
Математика включает в себя манипуляции с числами в программе. Общие вопросы по математике задавайте на math.stackexchange.com. Примечание. Если ваш вопрос касается неожиданных результатов вычислений с плавающей запятой, сначала прочтите https://stackoverflow.com/questions/588004/is-floating-point-math-broken.