1 #include <bits/stdc++.h> 2 #define ll long long 3 4 using namespace std; 5 6 int main() { 7 std::ios_base::sync_with_stdio(false); 8 cin.tie(0); 9 cout.tie(0); 10 11 int n; 12 cin >> n; 13 if (n == 1) { 14 cout << 1; 15 return 0; 16 } else if (n == 2) { 17 cout << 2; 18 return 0; 19 } 20 21 ll dp[n + 1] = {}; 22 dp[n] = 1; 23 dp[n - 1] = 1; 24 dp[n - 2] = dp[n - 1] + dp[n]; 25 for (int i = n - 3; i >= 0; i--) { 26 dp[i] = dp[i + 1] + dp[i + 2] + dp[i + 3]; 27 } 28 cout << dp[0]; 29 return 0; 30 }