/*
TASK:BOOKS
LANG:C++
*/
#include<iostream>
using namespace std;

int n,k,s[200],d[200],minsum=10000000,cursum=0;

void f(int sutr,int kniga);

int main()
{
  cin>>n>>k;
  int i;
  for(i=0;i<n;i++)
    cin>>s[i];
  for(i=0;i<n;i++)
    cin>>d[i];
  f(0,0);
  cout<<minsum<<endl;
  return 0;
}

void f(int sutr,int kniga)
{
   if(kniga==n)
   {
      if(minsum>cursum)
        minsum=cursum;
      return;
   }
   int i,seg=0;
   if(sutr==k-1)
   {
      for(i=0;i<n-kniga;i++)
         seg+=d[i]*s[kniga+i];
      cursum+=seg;
      if(minsum>cursum)
         minsum=cursum;
      cursum-=seg;
      return;
   }
   for(i=0;i<n-kniga;i++)
   {
      seg+=d[i]*s[kniga+i];
      cursum+=d[i]*s[kniga+i];
      if(cursum>minsum)
      {
         cursum-=seg;
         return;
      }
      f(sutr+1,kniga+i+1);
   }
   cursum-=seg;
}
