Cod sursa(job #202630)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 10 august 2008 12:45:24
Problema Regiuni Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<stdio.h>

#define N_MAX 1110
#define N_MIN 2
#define N_MAXX 1100000

int n,m,N,rez,reg,i,j,x,y,t;
int v[N_MAXX][N_MIN],R[N_MAX];
int a[N_MAX],b[N_MAX],c[N_MAX];

int main()
{
freopen("regiuni.in","rt",stdin);
freopen("regiuni.out","wt",stdout);

rez=0;
v[0][0]=0;
v[0][1]=0;
N=1;
scanf("%d %d", &n, &m);

for (i=1;i<=n;++i)
     scanf("%d %d %d", &a[i], &b[i], &c[i]);

     for (i=1;i<=m;++i)
	  {
	  scanf("%d %d" , &x, &y);
	  for (j=1;j<=m;++j)
	      {
	      R[j]=a[j]*x+b[j]*y+c[j];
	      if (R[j]>0) R[j]=1;
		     else R[j]=0;
		     }
		     t=0;
		     reg=0;
	       for (j=1;j<=n;++j)
		   {
		    if (v[t][R[j]]==0)
			{
			 reg=1;
			 v[t][R[j]]=N;
			 v[N][0]=0;
			 v[N][1]=0;
			 N++;
			 }
		    t=v[t][R[j]];
		    }
		   rez+=reg;
		   }
printf("%d", rez);
return 0;
}