g1101_1200.s1137_n_th_tribonacci_number.Solution Maven / Gradle / Ivy
package g1101_1200.s1137_n_th_tribonacci_number;
// #Easy #Dynamic_Programming #Math #Memoization #Dynamic_Programming_I_Day_1
// #2022_03_09_Time_0_ms_(100.00%)_Space_41.3_MB_(10.42%)
/**
* 1137 - N-th Tribonacci Number\.
*
* Easy
*
* 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 `n`, return the value of Tn.
*
* **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`.
**/
public class Solution {
public int tribonacci(int n) {
if (n == 0) {
return 0;
} else if (n <= 2) {
return 1;
} else {
int tn = 0;
int tn1 = 1;
int tn2 = 1;
int tmp = 0;
for (int i = 3; i <= n; i++) {
tmp = tn + tn1 + tn2;
tn = tn1;
tn1 = tn2;
tn2 = tmp;
}
return tmp;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy