#include "stdio.h"
#include "conio.h"
struct toado
{
float x;
float y;
};
// tinh dien tich tam giac
float dientich (toado A,toado B,toado C)
{
float S=0.5*(A.x*B.y + B.x*C.y + C.x*A.y - B.y*C.x - C.y*A.x - A.y*B.x);
return((S >0)? S: -S);
}
// kiem tra diem co thuoc tam giac khong
int kiemtra(toado A, toado B,toado C,toado X)
{
if( (dientich(A,B,X)+ dientich(A,C,X) + dientich(B,C,X)) == dientich(A,B,C)) return(1);
return(0);
}
int xuli(FILE *f,toado lom1, toado lom2,toado loi1,toado loi2,int n)
{
int so=0;
for ( int i=0; i<n;i++)
{
toado kt;
fscanf(f,"%f",&kt.x);
fscanf(f,"%f",&kt.y);
if( kiemtra(lom1,lom2,loi1,kt) || kiemtra(lom1,lom2,loi2,kt))
so++;
}
return (so);
}
float T_toado(toado A,toado B,toado C)
{
// thay toa do vao duong thang
return ((B.y-A.y)*(C.x-A.x)-(B.x-A.x)*(C.y-A.y));
}
int main()
{
toado A,B,C,D;
FILE *fi,*fo;
int n,dem=0;
fi=fopen("INSIDE1.inp","rt");
fo=fopen("INSIDE1.out","wt");
if(fi==NULL) fprintf(fo," TEP KHONG TON TAI");
// doc toa do 4 diem A B C D
fscanf(fi,"%f",&A.x); fscanf(fi,"%f",&A.y);
fscanf(fi,"%f",&B.x); fscanf(fi,"%f",&B.y);
fscanf(fi,"%f",&C.x); fscanf(fi,"%f",&C.y);
fscanf(fi,"%f",&D.x); fscanf(fi,"%f",&D.y);
fscanf(fi,"%d",&n);
if((T_toado(D,B,C)* T_toado(D,B,A))>=0)
dem=xuli(fi,A,C,B,D,n);
else
dem=xuli(fi,B,D,A,C,n);
// XUAT KET QUA
fprintf(fo,"\t%d",dem);
fclose(fi);
fclose(fo);
}