Блог пользователя Lord_David

Автор Lord_David, история, 2 года назад, По-английски

Hello, could someone please explain this problem 450B - Jzzhu and Sequences to me. I've read the editorial and some other peoples code, but I'm not sure I completely understand it. Thanks in advance!

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

»
2 года назад, # |
Rev. 2   Проголосовать: нравится +4 Проголосовать: не нравится

Notice that the relation f[i] = f[i+1] + f[i-1] can be rewritten as f[i+1] = f[i] — f[i-1]. We can now calculate f[i] just by using the rewritten relation. After calculating the first 8 terms of f, we get the numbers: x, y, y-x, -x, -y, x-y, x, y. Notice that f repeats itself; to be more precise, f[i+6] = f[i] for any i, so we can just take n modulo 6 and print the corresponding number from the first 6 terms of f.

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

Another thing apart from the already present comments, learn matrix exponentiation method for fibonacci numbers. Similar idea will work here.