#include <iostream>
using namespace std;
int main(){
  int a[1000],b[1000],n,m,i,j;
  cin>>n>>m;
  for(i=0;i<n;i++) cin>>a[i];
  for(i=0;i<m;i++) cin>>b[i];
  int small[1000][1000]={a[0]*b[0]};
  for(i=1;i<n;i++) small[i][i]=small[i-1][i-1]+a[i]*b[i];
  for(i=1;i<m;i++) small[0][i]=min(a[0]*b[i],small[0][i-1]);
  for(i=1;i<n;i++) for(j=i+1;j<m;j++) small[i][j]=min(small[i-1][j-1]+a[i]*b[j],small[i][j-1]);
  cout<<small[n-1][m-1]<<endl;
  return 0;
}