var s:array[0..50000]of longint;
i,j,a,n,m:longint; {定义}
begin {main}
readln(n,m); {输入C和B}
for i:=1 to m do begin
read(a); {输入每筒食物所含的卡路里}
for j:=n downto a do
if s[j-a]+a>s[j] then s[j]:=s[j-a]+a; {判断吃了第j筒后摄入的卡路里会不会超标,不超标则吃下去}
end;
write(s[n]); {输出}
end.