Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define ll long long
- using namespace std;
- const int N=2050;
- ll n,dp[N][N],arr[N];
- ll solve(int i,int j,ll moves)
- {
- if(i>j)
- return 0;
- if(!dp[i][j])
- {
- ll x=arr[i]*moves+solve(i+1,j,moves+1);
- ll y=arr[j]*moves+solve(i,j-1,moves+1);
- dp[i][j]=min(x,y);
- }
- return dp[i][j];
- }
- int main()
- {
- cin>>n;
- for(int i=0; i<n; i++)
- cin>>arr[i];
- cout<<solve(0,n-1,1);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement