fork download
  1. #include<iostream>
  2. #include<vector>
  3. #include<cmath>
  4. #include<algorithm>
  5. #include<set>
  6. #include<map>
  7.  
  8. #define ll long long int
  9. #define llu unsigned long long int
  10. #define N 100000
  11. using namespace std;
  12.  
  13.  
  14. int main(){
  15. int n;
  16. cin>>n;
  17. int a1[N+1],b1[N+1],c1[N+1],*a,*b,*c,*d;
  18. int dp[N+1];
  19. for(int i=1;i<=n;i++)
  20. cin>>a1[i]>>b1[i]>>c1[i];
  21. a=a1;b=b1;c=c1;
  22. if(a[1]>b[1]&&a[1]>c[1]){
  23. dp[1]=a[1];
  24. d=c;
  25. c=a;
  26. a=d;
  27. }else if(b[1]>a[1]&&b[1]>c[1]){
  28. dp[1]=b[1];
  29. d=c;
  30. c=b;
  31. b=d;
  32. }else{
  33. dp[1]=c[1];
  34. }
  35. for(int i=2;i<=n;i++){
  36. if(a[i]>b[i]){
  37. d=c;
  38. c=a;
  39. a=d;
  40. d[i]=a[i]+d[i-1];
  41. }else{
  42. d=c;
  43. c=b;
  44. b=d;
  45. d[i]=b[i]+d[i-1];
  46. }
  47. }
  48. cout<<d[n];
  49. return 0;
  50. }
Success #stdin #stdout 0s 4484KB
stdin
3
10 40 70
20 50 80
30 60 90
stdout
110