n,m=map(int,input().split())
C=list(map(int,input().split()))

inf=float('inf')

DP=[[inf]*(n+1) for i in range(m+1)]

DP[0][0]=0

for i in range(m):
	for j in range(n+1):
		if j-C[i]<0:
			DP[i+1][j]=DP[i][j]
		else:
			DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1)

print(DP[m][n]) n,m=map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split m C=list(map(int,input().split())) C list(map(int,input().split())) list map(int,input().split()) map int input().split() ().split () input split inf=float('inf') inf float('inf') float 'inf' [inf]*(n+1) for i in range(m+1) for i in range(m+1) i range(m+1) range m+1 m 1 for i in range(m+1) [inf]*(n+1) [inf] inf n+1 n 1 DP=[[inf]*(n+1) for i in range(m+1)] DP [[inf]*(n+1) for i in range(m+1)] DP[0][0]=0 DP[0][0] [0] DP 0 0 0 for i in range(m):
	for j in range(n+1):
		if j-C[i]<0:
			DP[i+1][j]=DP[i][j]
		else:
			DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1) i range(m) range m for j in range(n+1):
		if j-C[i]<0:
			DP[i+1][j]=DP[i][j]
		else:
			DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1) j range(n+1) range n+1 n 1 if j-C[i]<0:
			DP[i+1][j]=DP[i][j]
		else:
			DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1) j-C[i]<0 j-C[i] j C[i] C i 0 DP[i+1][j]=DP[i][j] DP[i+1][j] [i+1] DP i+1 i 1 j DP[i][j] [i] DP i j DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1) DP[i+1][j] [i+1] DP i+1 i 1 j min(DP[i][j],DP[i+1][j-C[i]]+1) min DP[i][j] [i] DP i j DP[i+1][j-C[i]]+1 DP[i+1][j-C[i]] [i+1] DP i+1 i 1 j-C[i] j C[i] C i 1 print(DP[m][n]) print DP[m][n] [m] DP m n m=map(int,input().split()) map(int,input().split()) m inf=float('inf') float('inf') inf C=list(map(int,input().split())) list(map(int,input().split())) C n,m=map(int,input().split()) map(int,input().split()) n DP=[[inf]*(n+1) for i in range(m+1)] [[inf]*(n+1) for i in range(m+1)] DP
n,m=map(int,input().split())
C=list(map(int,input().split()))

inf=float('inf')

DP=[[inf]*(n+1) for i in range(m+1)]

DP[0][0]=0

for i in range(m):
	for j in range(n+1):
		if j-C[i]<0:
			DP[i+1][j]=DP[i][j]
		else:
			DP[i+1][j]=min(DP[i][j],DP[i+1][j-C[i]]+1)

print(DP[m][n])
