#include<iostream>
#include<vector>
using namespace std;
 
int n,m,an=1e9;
int d[1002];
int c[1002];
int main(){
    cin>>n>>m;
    for(int i=0;i<n;i++)cin>>d[i];
    for(int i=0;i<m;i++)cin>>c[i];
    vector<vector<int> >vec(m+2,vector<int>(n+2,1e9));
    vec[0][0]=0;
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++){
            vec[i+1][j]=min(vec[i+1][j],vec[i][j]);
            vec[i+1][j+1]=min(vec[i+1][j+1],vec[i][j]+c[i]*d[j]);
        }
    }
    for(int i=0;i<=m;i++)
        an=min(an,vec[i][n]);
    cout<<an<<endl;
}