# import sys from collections import deque, defaultdict from copy import deepcopy from bisect import bisect_left, bisect_right, insort_left, insort_right from heapq import heapify, heappop, heappush from itertools import product, permutations, combinations, combinations_with_replacement from functools import reduce from math import gcd, sin, cos, tan, asin, acos, atan, degrees, radians, ceil, floor, log, sqrt from math import pi as PI from decimal import Decimal # sys.setrecursionlimit(10**6) INF = 10**18 MOD = 10**9+7 # MOD = 998244353 yes="Yes" no="No" from math import ceil def II():return int(input()) def SI():return str(input()) def MI():return map(int,input().split()) def MS():return map(str,input().split()) def LI():return list(map(int,input().split())) def LS():return list(map(str,input().split())) l=II() n=II() w=sorted(LI()) cnt=0 for i in range(n): if l-w[i]>=0: l-=w[i] cnt+=1 else: print(cnt) exit()