-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Expand file tree
/
Copy path1137-n-th-tribonacci-number.kt
More file actions
41 lines (36 loc) · 947 Bytes
/
1137-n-th-tribonacci-number.kt
File metadata and controls
41 lines (36 loc) · 947 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// using fancy schmancy Kotlin way
class Solution {
fun tribonacci(n: Int): Int {
return when {
n == 0 -> 0
n == 1 -> 1
n == 2 -> 1
else -> run {
var n0 = 0
var n1 = 1
var n2 = 1
for (i in 3..n) {
val temp = n0 + n1 + n2
n0 = n1
n1 = n2
n2 = temp
}
n2
}
}
}
}
//normal way to do it (Java safe)
class Solution {
fun tribonacci(n: Int): Int {
var numbers = intArrayOf(0,1,1)
if (n < 3) return numbers[n]
for (i in 3..n) {
val temp = numbers[0] + numbers[1] + numbers[2]
numbers[0] = numbers[1]
numbers[1] = numbers[2]
numbers[2] = temp
}
return numbers[2]
}
}