#include<bits/stdc++.h>
using namespace std;
long long n,ans,a[11000000],b,c,dp[11000000],k;
int main()
{
cin>>n>>b;
fill(dp+1,dp+100001,99999999999);
for(int i=1;i<=b;i++)
{
cin>>a[i];
for(int j=a[i];j<=100001;j++)
dp[j]=min(dp[j],dp[j-a[i]]+1);
}
for(int i=1;i<=n;i++)
{
cin>>c;
c+=k-1;k=c;
if(dp[c]==99999999999){cout<<-1;return 0;}
ans+=dp[c];
}
cout<<ans;
return 0;
}