Kodumaro :: Uma brincadeira rápida

Released on December 20th, 2018
The shadows behind the code.
Python

Esta foi uma publicação de abril de 2015, atualizada em novembro do mesmo ano, que resolvi trazer de volta.

Um jeito divertido de calcular Fibonacci usando NumPy:

from numpy import matrix, long

m = matrix('1, 1; 1, 0', dtype=long)

def fib(n: int) -> long:
    return (m ** n)[0, 0]

Cython

Mesma ideia em Cython:

from libc.stdint cimport int64_t
from numpy cimport ndarray
from numpy import matrix, long


cdef:
    ndarray m = matrix('1, 1; 1, 0', dtype=long)


cpdef int64_t fib(int n):
    return (m ** n)[0, 0]

Functional | Python | Reblog