Трибоначчи с тремя стартами

Трибоначчи похожа на Фибоначчи, только каждый новый элемент считается по трём предыдущим числам. Напиши функцию tribonacci, которая получает стартовую тройку signature и длину результата n. Верни первые n элементов последовательности, а если n равно 0, верни пустой список.

Примеры

Ввод
[1, 1, 1], 10
Вывод
[1, 1, 1, 3, 5, 9, 17, 31, 57, 105]
Ввод
[0, 0, 1], 10
Вывод
[0, 0, 1, 1, 2, 4, 7, 13, 24, 44]
Ввод
[1, 0, 0], 10
Вывод
[1, 0, 0, 1, 1, 2, 4, 7, 13, 24]

Нужно реализовать

def tribonacci(signature: list[int], n: int) -> list[int]:

Теги

listsmath
PostgreSQLv16

Здесь будет результат выполнения кода

Видимые тесты
1
Ввод
[1,1,1], 10
Ожидаемый[1,1,1,3,5,9,17,31,57,105]
2
Ввод
[0,0,1], 10
Ожидаемый[0,0,1,1,2,4,7,13,24,44]
3
Ввод
[1,0,0], 10
Ожидаемый[1,0,0,1,1,2,4,7,13,24]
4
Ввод
[0,1,1], 0
Ожидаемый[]
5
Ввод
[1,2,3], 1
Ожидаемый[1]
6
Ввод
[1,2,3], 2
Ожидаемый[1,2]
Фокус-радио
На паузе · SomaFM · Fluid