class Solution {
private:
map<int,int>mp;
public:
int tribonacci(int n) {
if(mp.count(n)) return mp[n];
int ans = 0;
if(n == 0) ans = 0;
else if(n <= 2) ans = 1;
else
ans = tribonacci(n-1) + tribonacci(n-2) + tribonacci(n-3);
mp[n] = ans;
return ans;
}
};