const len=100*sqrt(2);
var ans:double ;i,j,n,m,k,tot,max,x,y,t:longint;
w:array[0..1001,1..2]of longint;
f:array[0..1001]of longint;
procedure qsort(l,r:longint);
var i,j,mid1,t,mid2:longint;
begin
i:=l;j:=r;mid1:=w[(l+r)shr 1,1];mid2:=w[(l+r)shr 1,2];
repeat
while (w[i,2]<mid2)or((w[i,2]=mid2)and(w[i,1]<mid1))do inc(i);
while (w[j,2]>mid2)or((w[j,2]=mid2)and(w[j,1]>mid1))do dec(j);
if(i<=j) then
begin
t:=w[i,1];w[i,1]:=w[j,1];w[j,1]:=t;
t:=w[i,2];w[i,2]:=w[j,2];w[j,2]:=t;
inc(i);dec(j);
end;
until i>j;
if(l<j)then qsort(l,j);
if(i<r)then qsort(i,r);
end;
begin
readln(n,m);
readln(k);
tot:=0;
fillchar(w,sizeof(w),0);
for i:=1 to k do
begin
readln(x,y);
inc(tot);
w[tot,1]:=x;
w[tot,2]:=y;
end;
qsort(1,k);
for i:=1 to k do f[i]:=1;
for i:=2 to k do
for j:=1 to i-1 do
if(w[i,1]>w[j,1])and(w[i,2]>w[j,2])and(f[j]+1>f[i])then
f[i]:=f[j]+1;
max:=0;
for i:=k downto 1 do
if(f[i]>max) then max:=f[i];
ans:=(m+n)*100;
ans:=ans-200*max+max*len;
writeln(round(ans));
end.
用快排照样过