#pragma GCC optimize("O3") #include int v[5000][4],n; long long memo[5000][15001]; long long dfs(int d,int r){ if(d==n)return 0; if(!memo[d][r]){ memo[d][r]=1LL<<60; int rem=(n-d)*3; if(rem>=r)for(int i=0;i<=(r<3?r:3);i++)if(memo[d][r]>dfs(d+1,r-i)+v[d][i])memo[d][r]=dfs(d+1,r-i)+v[d][i]; } return memo[d][r]; } int main(){ int k; scanf("%d%d",&n,&k); for(int i=0;i