I have been scouring for resources that i can understand, which prove that the first fibonacci number divisible by K can be found in O(K) time, but I couldnt. Can someone provide a satisfactory proof for that?
# | User | Rating |
---|---|---|
1 | tourist | 4009 |
2 | jiangly | 3823 |
3 | Benq | 3738 |
4 | Radewoosh | 3633 |
5 | jqdai0815 | 3620 |
6 | orzdevinwang | 3529 |
7 | ecnerwala | 3446 |
8 | Um_nik | 3396 |
9 | ksun48 | 3390 |
10 | gamegame | 3386 |
# | User | Contrib. |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 157 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
9 | nor | 153 |
I have been scouring for resources that i can understand, which prove that the first fibonacci number divisible by K can be found in O(K) time, but I couldnt. Can someone provide a satisfactory proof for that?
Name |
---|
Pisano periods might help
For Pisano periods, the upper bound is given by P(k) ≤ k*k−1. However, we are primarily concerned with the first occurrence of 0 in F(n)modk and the repetition of the entire sequence (where F(n) is the n-th Fibonacci number). Therefore, I couldn't infer much from it.
There are at most 4 zeros in the Pisano period, so it only changes by a constant factor, and since the 0s repeat they can't be dense in the first quarter of the period or something like that, so they are equivalent (not sure though, might be wrong)
P(k) <= 6k, maybe you should read those sources you scoured for more carefully
where i can get this proof that p(k)<=6k
.