n,m=map(int,input().split())
d=[10001]*(m+1)
d[0]=0
currency=[int(input()) for _ in range(n)]
for i in range(len(currency)):
for j in range(currency[i],m+1):
# 코인 + (현재-코인) 값으로 현재의 값을 만드는 방법이 존재
if d[j-currency[i]]!=10001:
d[j]=min(d[j],d[j-currency[i]]+1)
if d[m]==10001:
print(-1)
else:
print(d[m])