Pagini recente » Cod sursa (job #2450650) | Cod sursa (job #1801294) | Cod sursa (job #1645970) | Cod sursa (job #1377369) | Cod sursa (job #301265)
Cod sursa(job #301265)
#include <stdio.h>
#include <string>
using namespace std;
#define MOD 1323456201
#define DIM 1005
struct drpt {int a,b,c;} d[DIM];
struct pct {int x,y;} p[DIM];
long long sol[DIM];
int m,n,nrt;
void read ()
{
int i;
scanf ("%d%d",&n,&m);
for (i=1; i<=n; ++i)
scanf ("%d%d%d",&d[i].a,&d[i].b,&d[i].c);
for (i=1; i<=m; ++i)
scanf ("%d%d",&p[i].x,&p[i].y);
}
void proc ()
{
int i,j;
for (i=1; i<=m; ++i)
for (j=1; j<=n; ++j)
if (d[j].a*p[i].x+d[j].b*p[i].y+d[j].c>0)
{
sol[i]=2*sol[i]+1;
if (sol[i]>MOD)
sol[i]-=MOD;
}
else
{
sol[i]=2*sol[i];
if (sol[i]>MOD)
sol[i]-=MOD;
}
++m;
}
void solve ()
{
int i;
long long j;
for (i=1; i<m; )
{
j=sol[i];
for ( ; sol[i]==j && i<m; ++i);
++nrt;
}
printf("%d",nrt);
}
int main()
{
freopen ("regiuni.in","r",stdin);
freopen ("regiuni.out","w",stdout);
read ();
proc ();
sort(sol,sol+m);
solve ();
return 0;
}