#include <bits/stdc++.h>
using namespace std;
const int maxn = 45, oo = 20 * 10 * 10000000 + 100;
int N, M, A[maxn], B[maxn], f[maxn][maxn], g[maxn][maxn], C[maxn][maxn];
void mul(int A[maxn][maxn], int B[maxn][maxn], int D[maxn][maxn]) {
  for (int i = (0), _n = (N); i <= _n; i++)
    for (int j = (0), _n = (N); j <= _n; j++) C[i][j] = oo;
  for (int i = (0), _n = (N); i <= _n; i++)
    for (int j = (0), _n = (N); j <= _n; j++)
      if (A[i][j] != oo) {
        for (int ti = (0), _n = (N); ti <= _n; ti++)
          for (int tj = (0), _n = (N); tj <= _n; tj++)
            if (B[ti][tj] != oo) {
              int ki = i, kj = tj;
              if (j < ti)
                ki += ti - j;
              else
                kj += j - ti;
              if (ki > N || kj > N) continue;
              C[ki][kj] = min(C[ki][kj], A[i][j] + B[ti][tj]);
            }
      }
  for (int i = (0), _n = (N); i <= _n; i++)
    for (int j = (0), _n = (N); j <= _n; j++) D[i][j] = C[i][j];
}
void work() {
  for (int i = (0), _n = (N - 1); i <= _n; i++) scanf("%d", A + i);
  for (int i = (0), _n = (N - 1); i <= _n; i++) scanf("%d", B + i);
  for (int i = (0), _n = (N); i <= _n; i++)
    for (int j = (0), _n = (N); j <= _n; j++) f[i][j] = oo;
  f[0][0] = 0;
  for (int k = (0), _n = (N - 1); k <= _n; k++) {
    for (int i = (0), _n = (N); i <= _n; i++)
      for (int j = (0), _n = (N); j <= _n; j++) g[i][j] = oo;
    for (int i = (0), _n = (N); i <= _n; i++)
      for (int j = (0), _n = (N); j <= _n; j++)
        if (f[i][j] != oo) {
          if (j < N) g[i][j + 1] = min(g[i][j + 1], f[i][j] + A[k]);
          if (j == 0 && i < N)
            g[i + 1][j] = min(g[i + 1][j], f[i][j] + B[k]);
          else if (j > 0)
            g[i][j - 1] = min(g[i][j - 1], f[i][j] + B[k]);
        }
    for (int i = (0), _n = (N); i <= _n; i++)
      for (int j = (0), _n = (N); j <= _n; j++) f[i][j] = g[i][j];
  }
  for (int i = (0), _n = (N); i <= _n; i++)
    for (int j = (0), _n = (N); j <= _n; j++) g[i][j] = oo;
  g[0][0] = 0;
  for (; M; M >>= 1) {
    if (M & 1) mul(g, f, g);
    mul(f, f, f);
  }
  printf("%d\n", g[0][0]);
}
int main() {
  for (; scanf("%d%d", &N, &M) != EOF; work())
    ;
  return 0;
}
