Pagini recente » Cod sursa (job #149473) | Cod sursa (job #3255054) | Cod sursa (job #1422420) | Cod sursa (job #2498000) | Cod sursa (job #796249)
Cod sursa(job #796249)
#include<iostream>
#include<cstdio>
using namespace std;
long long x[1000],y[1000],xM,yM,i,n,m,ct;
double S,Arie;
int main()
{
freopen("poligon.in","r",stdin);
freopen("poligon.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=n;++i)
scanf("%d%d",&x[i],&y[i]);
x[n+1]=x[1];y[n+1]=y[1];
for(i=1;i<=n;++i)
S+=(double((x[i+1]-x[i])*(y[i]+y[i+1]))/2);
if(S<0)
S=-S;
while(m--)
{
scanf("%d%d",&xM,&yM);
Arie=0;
for(i=1;i<=n;++i)
{
Arie+=(double(abs(xM*y[i]+x[i]*y[i+1]+x[i+1]*yM-y[i]*x[i+1]-y[i+1]*xM-yM*x[i]))/2);
}
if(S==Arie) ct++;
}
printf("%d\n",ct);
return 0;
}