Advertisement
MAGCARI

MCM

Jan 7th, 2023
1,083
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.53 KB | None | 0 0
  1. /*
  2.     Task    : MCM
  3.     Author  : Phumipat C. [MAGCARI]
  4.     Language: C++
  5.     Created : 08 January 2023 [09:52]
  6. */
  7. #include<bits/stdc++.h>
  8. using namespace std;
  9. struct A{
  10.     int r,c;
  11. };
  12. A a[110];
  13. int dp[110][110];
  14. int recur(int l,int r){
  15.     if(l == r)      return 0;
  16.     if(dp[l][r])    return dp[l][r];
  17.     int mn = 1e9;
  18.     for(int k=l;k<r;k++){
  19.         int now = recur(l,k) + recur(k+1,r) + a[l].r * a[k].c * a[r].c;
  20.         mn = min(mn,now);
  21.     }
  22.     return dp[l][r] = mn;
  23. }
  24. int main(){
  25.     int n;
  26.     cin >> n;
  27.     for(int i=1;i<=n;i++)
  28.         cin >> a[i].r >> a[i].c;
  29.     printf("%d\n",recur(1,n));
  30.     return 0;
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement