program Batoh;
var vstup: text;
    i,j,iz,ib,m,n,s,ms: integer;
    x,z,b: array[1..100] of integer;
begin
 assign(vstup,'zavazi.txt');
 reset(vstup);
 read(vstup,m,n);
 for i:=1 to n do read(vstup,x[i]);
 z[1]:=1;
 s:=x[1];
 ms:=s;
 i:=2;
 iz:=1;
 b[1]:=z[1];
 ib:=1;
 repeat
   if i>n then begin
            i:=succ(z[iz]);
            s:=s-x[z[iz]];
            iz:=pred(iz)
          end
          else begin
            if (s+x[i]<m) then begin
              iz:=succ(iz);
              z[iz]:=i;
              s:=s+x[i];
              if (s>ms) then begin
                ib:=iz;
                for j:=1 to ib do b[j]:=z[j];
                ms:=s
              end
            end;
            i:=succ(i)
          end
 until ((iz=0) and (i>n));
 writeln('Maximalni napln tasky je:',ms);
 writeln('Toho lze dosahnout zavazimi:');
 for j:=1 to ib do write(x[b[j]],'  ');
 writeln;
 readln;
end.