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.