fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void executeTime() {
  5. cerr << "Time Taken: " << (float)clock() / CLOCKS_PER_SEC << " secs";
  6. }
  7.  
  8. int main() {
  9.  
  10. int n; cin >> n;
  11.  
  12. vector<int> v(n);
  13. for (auto &x : v) {
  14. cin >> x;
  15. }
  16.  
  17. vector<int> dp(n + 1, 0);
  18. dp[0] = INT_MAX;
  19.  
  20. dp[1] = v[0];
  21.  
  22. for (int i = 2; i <= n; i++) {
  23. if (i - 1 >= 1) {
  24. dp[i] = dp[i - 1];
  25. } if (i - 3 >= 1) {
  26. dp[i] = max(dp[i], dp[i - 3]);
  27. } if (i - 5 >= 1) {
  28. dp[i] = max(dp[i], dp[i - 5]);
  29. }
  30.  
  31. dp[i] += v[i - 1];
  32. }
  33.  
  34. cout << dp[n] << endl;
  35.  
  36. executeTime();
  37. return 0;
  38. }
Success #stdin #stdout #stderr 0s 5308KB
stdin
8 
5 8 3 100 -5 -5 5 10
stdout
131
stderr
Time Taken: 0.004447 secs