[Introducción a algoritmos y estructuras de datos] [Día 4] Implemente la secuencia generalizada de Fibonacci con el número mínimo de líneas de código

Escriba una función Tribonacci (firma, n), si queremos comenzar con [1,1,1] como entrada, podemos obtener la secuencia generalizada de Fibonacci: [1, 1, 1, 3, 5, 9, 17, 31,…] La
firma del parámetro de entrada es una lista que contiene los primeros tres dígitos, n representa la longitud de la secuencia devuelta (no negativa), debe devolver el
Inserte la descripción de la imagen aquí
método 1 de secuencia de Fibonacci generalizado completo :

def tribonacci(signature, n):   
    [signature.append(sum(signature[-3:]))  for i in range(3, n)]
    return signature[:n]
print(tribonacci([1,1,1],10))
print(tribonacci([300,200,100],0))
print(tribonacci([0.5,0.5,0.5],30))

Inserte la descripción de la imagen aquí
Método 2:

def tribonacci(s, n):
    for i in range(3, n): 
        s.append(s[i-1] + s[i-2] + s[i-3])
    return s[:n]
print(tribonacci([1,1,1],10))
print(tribonacci([300,200,100],0))
print(tribonacci([0.5,0.5,0.5],30))

Inserte la descripción de la imagen aquí

Publicado 42 artículos originales · elogiado 28 · visitas 4961

Supongo que te gusta

Origin blog.csdn.net/KaelCui/article/details/105351120
Recomendado
Clasificación