program convoy(input,output);
var
n,m,l:int64;
i,j:longint;
temp,lest:int64;
a:array[0..1000,1..2]of int64;
f:Array[0..1001]of double;
begin
assign(input,'convoy.in');
reset(input);
readln(m,l,n);
for i:=1 to n do readln(a[i,1],a[i,2]);
close(input);
for i:=1 to n do
begin
temp:=a[i,1];
lest:=a[i,2];
f[i]:=f[i-1]+l/a[i,2];
for j:=i-1 downto 0 do
begin
if temp>m then break;
if f[i]>f[j]+l/lest
then f[i]:=f[j]+l/lest;
temp:=temp+a[j,1];
if lest>a[j,2] then lest:=a[j,2];
end;
end;
assign(output,'convoy.out');
rewrite(output);
writeln((f[n]*60):0:1);
close(output);
end.