program tulips2;
const
MAXN = 100000;
var
K, N, bottomLeftX, bottomLeftY, bottomRightX, bottomRightY, i, topLeftX, topLeftY, topRightX, topRightY, angoloacuto, angolottuso, primo,secondo, terzo,quarto : LongInt;
X, Y : Array[0..MAXN-1] of LongInt;
function prodottoscalare(x1,y1,x2,y2,x3,y3,x4,y4:LongInt):LongInt;
var componenti:array[1..2,1..2] of LongInt;
begin
componenti[1,1]:=x2-x1;
componenti[1,2]:=y2-y1;
componenti[2,1]:=x4-x3;
componenti[2,2]:=y4-y3;
prodottoscalare:= componenti[1,1]* componenti[2,1]+componenti[1,2]* componenti[2,2];
end;
begin
{
uncomment the two following lines if you want to read/write from files
assign(input, 'input.txt'); reset(input);
assign(output, 'output.txt'); rewrite(output);
}
ReadLn(topLeftX, topLeftY);
ReadLn(topRightX, topRightY);
ReadLn(bottomRightX, bottomRightY);
ReadLn(bottomLeftX, bottomLeftY);
ReadLn(N);
for i:=0 to N-1 do
ReadLn(X[i], Y[i]);
K := 0;
for i:=0 to N-1 do
begin
angoloacuto:=0; angolottuso:=0;
primo:=prodottoscalare(X[i],Y[i],topLeftX, topLeftY,X[i],Y[i],bottomLeftX, bottomLeftY);
if primo<0 then angoloacuto:=angoloacuto+1
else if primo>0 then angolottuso:=angolottuso+1;
secondo:=prodottoscalare(X[i],Y[i],topLeftX, topLeftY,X[i],Y[i],topRightX, topRightY);
if secondo<0 then angoloacuto:=angoloacuto+1
else if secondo>0 then angolottuso:=angolottuso+1;
terzo:=prodottoscalare(X[i],Y[i],bottomLeftX, bottomLeftY,X[i],Y[i],bottomRightX, bottomRightY);
if terzo<0 then angoloacuto:=angoloacuto+1
else if terzo>0 then angolottuso:=angolottuso+1;
quarto:=prodottoscalare(X[i],Y[i],topRightX, topRightY,X[i],Y[i],bottomRightX, bottomRightY);
if quarto<0 then angoloacuto:=angoloacuto+1
else if quarto>0 then angolottuso:=angolottuso+1;
if (angoloacuto=2) and (angolottuso=2) then k:=k+1;
end;
WriteLn(K);
end.
cHJvZ3JhbSB0dWxpcHMyOwoKY29uc3QKICAgIE1BWE4gPSAxMDAwMDA7Cgp2YXIKICAgIEssIE4sIGJvdHRvbUxlZnRYLCBib3R0b21MZWZ0WSwgYm90dG9tUmlnaHRYLCBib3R0b21SaWdodFksIGksIHRvcExlZnRYLCB0b3BMZWZ0WSwgdG9wUmlnaHRYLCB0b3BSaWdodFksIGFuZ29sb2FjdXRvLCBhbmdvbG90dHVzbywgcHJpbW8sc2Vjb25kbywgdGVyem8scXVhcnRvIDogTG9uZ0ludDsKICAgIFgsIFkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBBcnJheVswLi5NQVhOLTFdIG9mIExvbmdJbnQ7CgpmdW5jdGlvbiBwcm9kb3R0b3NjYWxhcmUoeDEseTEseDIseTIseDMseTMseDQseTQ6TG9uZ0ludCk6TG9uZ0ludDsKdmFyIGNvbXBvbmVudGk6YXJyYXlbMS4uMiwxLi4yXSBvZiBMb25nSW50OwogYmVnaW4KICAgIGNvbXBvbmVudGlbMSwxXTo9eDIteDE7CiAgICBjb21wb25lbnRpWzEsMl06PXkyLXkxOwogICAgY29tcG9uZW50aVsyLDFdOj14NC14MzsKICAgIGNvbXBvbmVudGlbMiwyXTo9eTQteTM7CiAgICBwcm9kb3R0b3NjYWxhcmU6PSBjb21wb25lbnRpWzEsMV0qIGNvbXBvbmVudGlbMiwxXStjb21wb25lbnRpWzEsMl0qIGNvbXBvbmVudGlbMiwyXTsKIGVuZDsKIApiZWdpbgogICAKewogICAgdW5jb21tZW50IHRoZSB0d28gZm9sbG93aW5nIGxpbmVzIGlmIHlvdSB3YW50IHRvIHJlYWQvd3JpdGUgZnJvbSBmaWxlcwogICAgYXNzaWduKGlucHV0LCAgJ2lucHV0LnR4dCcpOyAgcmVzZXQoaW5wdXQpOwogICAgYXNzaWduKG91dHB1dCwgJ291dHB1dC50eHQnKTsgcmV3cml0ZShvdXRwdXQpOwp9CgogICAgUmVhZExuKHRvcExlZnRYLCB0b3BMZWZ0WSk7CgogICAgUmVhZExuKHRvcFJpZ2h0WCwgdG9wUmlnaHRZKTsKCiAgICBSZWFkTG4oYm90dG9tUmlnaHRYLCBib3R0b21SaWdodFkpOwoKICAgIFJlYWRMbihib3R0b21MZWZ0WCwgYm90dG9tTGVmdFkpOwoKICAgIFJlYWRMbihOKTsKCiAgICBmb3IgaTo9MCB0byBOLTEgZG8KICAgICAgICBSZWFkTG4oWFtpXSwgWVtpXSk7CgogICAgSyA6PSAwOwoKICAgIGZvciBpOj0wIHRvIE4tMSBkbwogICAgICAgICAgICAgYmVnaW4KICAgICAgICAgICAgICAgYW5nb2xvYWN1dG86PTA7IGFuZ29sb3R0dXNvOj0wOwogICAgICAgICAgICAgICBwcmltbzo9cHJvZG90dG9zY2FsYXJlKFhbaV0sWVtpXSx0b3BMZWZ0WCwgdG9wTGVmdFksWFtpXSxZW2ldLGJvdHRvbUxlZnRYLCBib3R0b21MZWZ0WSk7CiAgICAgICAgICAgICAgIGlmIHByaW1vPDAgdGhlbiBhbmdvbG9hY3V0bzo9YW5nb2xvYWN1dG8rMQogICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgcHJpbW8+MCB0aGVuIGFuZ29sb3R0dXNvOj1hbmdvbG90dHVzbysxOwogICAgICAgICAgICAgICBzZWNvbmRvOj1wcm9kb3R0b3NjYWxhcmUoWFtpXSxZW2ldLHRvcExlZnRYLCB0b3BMZWZ0WSxYW2ldLFlbaV0sdG9wUmlnaHRYLCB0b3BSaWdodFkpOwogICAgICAgICAgICAgICBpZiBzZWNvbmRvPDAgdGhlbiBhbmdvbG9hY3V0bzo9YW5nb2xvYWN1dG8rMQogICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgc2Vjb25kbz4wIHRoZW4gYW5nb2xvdHR1c286PWFuZ29sb3R0dXNvKzE7CiAgICAgICAgICAgICAgIHRlcnpvOj1wcm9kb3R0b3NjYWxhcmUoWFtpXSxZW2ldLGJvdHRvbUxlZnRYLCBib3R0b21MZWZ0WSxYW2ldLFlbaV0sYm90dG9tUmlnaHRYLCBib3R0b21SaWdodFkpOwogICAgICAgICAgICAgICBpZiB0ZXJ6bzwwIHRoZW4gYW5nb2xvYWN1dG86PWFuZ29sb2FjdXRvKzEKICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIHRlcnpvPjAgdGhlbiBhbmdvbG90dHVzbzo9YW5nb2xvdHR1c28rMTsKICAgICAgICAgICAgICAgcXVhcnRvOj1wcm9kb3R0b3NjYWxhcmUoWFtpXSxZW2ldLHRvcFJpZ2h0WCwgdG9wUmlnaHRZLFhbaV0sWVtpXSxib3R0b21SaWdodFgsIGJvdHRvbVJpZ2h0WSk7CiAgICAgICAgICAgICAgIGlmIHF1YXJ0bzwwIHRoZW4gYW5nb2xvYWN1dG86PWFuZ29sb2FjdXRvKzEKICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIHF1YXJ0bz4wIHRoZW4gYW5nb2xvdHR1c286PWFuZ29sb3R0dXNvKzE7CiAgICAgICAgICAgICAgIGlmICAoYW5nb2xvYWN1dG89MikgYW5kIChhbmdvbG90dHVzbz0yKSB0aGVuIGs6PWsrMTsKICAgICAgICAgICAgZW5kOyAgIAogICAgV3JpdGVMbihLKTsKZW5kLgo=