The Tribonacci sequence Tn is defined as follows:
T0 = 0, T1 = 1, T2 = 1, and Tn+3 = Tn + Tn+1 + Tn+2 for n >= 0.
Given
Example 1:
Input: n = 4 Output: 4 Explanation: T_3 = 0 + 1 + 1 = 2 T_4 = 1 + 1 + 2 = 4
Example 2:
Input: n = 25 Output: 1389537
Constraints:
0 <= n <= 37 - The answer is guaranteed to fit within a 32-bit integer, ie.
answer <= 2^31 - 1 .
Solution
不難,就是照著題意做
kotlin
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Solution { | |
fun tribonacci(n: Int): Int { | |
return when { | |
n == 0 -> 0 | |
n == 1 -> 1 | |
n == 2 -> 1 | |
else -> { | |
var first = 0 | |
var second = 1 | |
var third = 1 | |
var target = n - 2 | |
var tmp = 0 | |
while(target > 0) { | |
tmp = first | |
first = second | |
second = third | |
third = tmp + first + second | |
--target | |
} | |
third | |
} | |
} | |
} | |
} |
沒有留言:
張貼留言