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]
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