Advertisement
Guest User

Untitled

a guest
Feb 24th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.71 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5.  
  6. int main()
  7. {
  8.     int n;
  9.     int cena[21][3];
  10.     int dp[21][3];
  11.     cin >> n;
  12.    
  13.     for(int i=1; i<=n; i++)
  14.         cin >> cena[i][0] >> cena[i][1] >> cena[i][2];
  15.  
  16.     int pom, resenie = 20001;
  17.  
  18.     for(int k = 0; k<3; k++)
  19.     {
  20.         dp[1][k] = cena[1][k];
  21.         dp[1][(k+1)%3] = dp[1][(k+2)%3] = 1000000000;
  22.         for(int i=2; i<=n; i++)
  23.         {
  24.             for(int j=0; j<3; j++)
  25.             {
  26.                 dp[i][j] = cena[i][j] + min(dp[i-1][(j+1)%3], dp[i-1][(j+2)%3]);
  27.             }
  28.         }
  29.         pom = min(dp[n][(k+1)%3], dp[n][(k+2)%3]);
  30.         resenie = min(pom, resenie);
  31.     }
  32.     cout << resenie << endl;
  33.     return 0;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement