n = int(input())
array = list(map(int, input().split()))
# 순서를 뒤집어 '최장 증가 부분 수열' 문제로 변환
array.reverse()
# 테이블 초기화
dp = [1] * n
# 가장 긴 증가하는 부분 수열(LIS) 알고리즘 수행
for i in range(1, n):
for j in range(0, i):
if array[j] < array[i]:
dp[i] = max(dp[i], dp[j] + 1)
# 열외해야 하는 병사의 최소 수를 출력
print(n - max(dp))
n, m = map(int, input().split()) #3종류, 700원
array = [] #200원, 300원, 500원
for i in range(n):
array.append(int(input()))
# 테이블 초기화
d = [10001] * (m + 1)
# 다이나믹 프로그래밍 진행(보텀업)
d[0] = 0
for i in range(n):
for j in range(array[i], m + 1, 100):
# (200~700, 300~700, 500~700), (701),100원단위로
if d[j - array[i]] != 10001:
d[j] = min(d[j], d[j - array[i]] + 1)
# 계산된 결과 출력
if d[m] == 10001: # 최종적으로 M원을 만드는 방법이 없는 경우
print(-1)
else:
print(d[m])