C = input() N = input() A = map(int, raw_input().split()) dp = [-1] * (10 ** 6) dp[0] = 0 for a in A: for i in xrange(a, C+1): j = i - a if dp[j] < 0: continue if dp[i] < 0: dp[i] = dp[j] + 1 else: dp[i] = min(dp[i], dp[j] + 1) print(dp[C])