from collections import * from itertools import * from functools import * from heapq import * import math,sys input = sys.stdin.readline C = int(input()) N = int(input()) A = list(map(int,input().split())) INF = (1<<60) dp = [INF]*(C+2) dp[0] = 0 for a in A: for i in range(C): dp[min(C+1,i+a)] = min(dp[min(C+1,i+a)],dp[i]+1) if dp[C]==INF: print(-1) else: print(dp[C])