Блог пользователя amazing-hash

Автор amazing-hash, история, 9 лет назад, По-русски

Задача источник: Даны целые числа 1≤n≤10^18 и 2≤m≤10^5, необходимо найти остаток от деления n-го числа Фибоначчи на m.

Так как 5 последних цифр в числах последовательности Фибоначчи повторяются с периодичностью 150000 членов. То достаточно просчитать 300000 чисел Фибоначчи по модулю 10^6 например и потом получать ответ sequence[n % 150000 + 150000] % m. Я вообще правильно рассуждаю? Что-то мне подсказывает что я не прав.

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

»
9 лет назад, # |
  Проголосовать: нравится +18 Проголосовать: не нравится

Матричку в степень, бац-бац и готово.

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится