program df;
var
f1,f2:text;
x,ans,y,t,z,k,w,s,p,i,j:longint;
begin
assign(f1,'goat.in');
assign(f2,'goat.out');
reset(f1);
rewrite(f2);
readln(f1,s,p);
t:=0;w:=0; ans:=25000000;
if (p mod 5 <>0)or (s-(p div 5)*10=0) then i:=p div 5
else i:=p div 5 -1;
w:=i*10;
if w>=s then begin if s mod 10 <>0 then t:=s div 10 +1
else t:= s div 10;end
else begin
p:=p-i*5;t:=t+i;
if (p mod 2 <>0)and(s-(p div 2)*5-w=0) then i:=p div 2
else i:=p div 2 -1;
w:=w+i*5;
if w>=s then begin if (s-w+5*i)mod 5 <>0 then t:=t+(s-w+5*i)div 5+1
else t:=t+(s-w+5*i)div 5;end
else begin
p:=p-i*2;t:=t+i; s:=s-w;
for k:=1 to s do begin
z:=0;w:=0;
x:=s-k;y:=p+k;
if (y mod 5 <>0)or (s-(y div 5)*10=0) then i:=y div 5
else i:=y div 5 -1;
w:=i*10;
if w>=x then begin if x mod 10 <>0 then z:=x div 10 +1
else z:= x div 10;end
else begin
y:=y-i*5;z:=z+i;
if (y mod 2 <>0)or(x-5*(y div 2)-w=0) then i:=y div 2
else i:=y div 2 -1;
w:=w+i*5;
if w>=x then begin if (x-w+5*i)mod 5 <>0 then z:=z+(x-w+5*i)div 5+1
else z:=z+(x-w+5*i)div 5;end;
end;
if (k+z<ans)and(w>=x)then ans:=k+z;
end;
end;
end;
if ans<>25000000then t:=t+ans;
writeln(f2,t);
close(f1);
close(f2);
end.