https://leetcode.com/problems/n-th-tribonacci-number/description/ Easy

Решение

fun tribonacci(n: Int): Int {
    if (n == 0) return 0
    if (n == 1 || n == 2) return 1

    var a = 0
    var b = 1
    var c = 1
    var d = 0

    for (i in 3..n) {
        d = a + b + c  // сумма трёх предыдущих чисел
        a = b          // сдвигаем числа для следующего шага
        b = c
        c = d
    }

    return c
}