m=int(input())
n=int(input())
a=list(map(int,input().split()))
b=list(map(int,input().split()))
c=list(zip(b,a))
"按罚款从大到小排序"
c.sort(reverse=True)
time=[0]*(1+n)
s=0
for i in range(n):
flat=0
for j in range(c[i][1],0,-1):
if not time[j]:
time[j]=1
flat=1
break
if not flat:
s+=c[i][0]
print(m-s)