#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define popcount __builtin_popcount using namespace std; using ll=long long; typedef pair P; ll dp[4][303][303][303]; const ll INF=1e18; template void chmax(T &x, T y){ x=max(x, y); } int main() { int n, k; cin>>n>>k; ll a[303]; for(int i=0; i>a[i]; } for(int i=0; i v; for(int i=0; i=1; i--){ if(l=0){ chmax(dp[1][l][r][i-(r-l)], dp[0][l][r][i]); } if(l=0){ chmax(dp[0][l-1][r][i-1], dp[0][l][r][i]+a[l-1]*(i-1)); } if(l=0){ chmax(dp[0][l][r][i-(r-l)], dp[1][l][r][i]); } if(l