fork(2) download
  1. #include <iostream>
  2. #include <vector>
  3. #define int unsigned long long
  4. //const int MOD = 1e9+7;
  5. using namespace std;
  6. main() {
  7. int n;
  8. while(cin >> n){
  9. if (n >= 3) {
  10. vector<int> dp(n + 1, 0);
  11. dp[0] = 1;
  12. dp[1] = 2;
  13. dp[2] = 7;
  14. vector<int> prex(n - 1, 0);
  15. prex[0] = 1;
  16. for (int i = 3; i <= n; i++) {
  17. prex[i - 2] = prex[i - 3] + dp[i - 2];
  18. dp[i] = 2 * dp[i - 1] + 3 * dp[i - 2] + 2 * prex[i - 3];}
  19. cout << dp[n];
  20. }
  21. }
  22. return 0;
  23. }
Success #stdin #stdout 0.01s 5436KB
stdin
4
stdout
71