Pagini recente » Cod sursa (job #478121) | Cod sursa (job #1423585) | Cod sursa (job #1325907) | Cod sursa (job #2195727) | Cod sursa (job #38996)
Cod sursa(job #38996)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define Nmax 1001
typedef int vector[Nmax];
vector a,b,c,x,y;
int n,m;
char s[Nmax][Nmax];
int pozitie(int i, int j) // punctul i - dreapta j
{
if( a[j]*x[i]+b[j]*y[i]+c[j] > 0 ) return 1;
return 0;
}
int sort_function( const void *a, const void *b)
{
return( strcmp((char *)a,(char *)b) );
}
int main()
{
int i,j,nrcomp=1;
freopen("regiuni.in","r",stdin);
freopen("regiuni.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d%d%d",a+i,b+i,c+i);
for(i=0;i<m;i++)
scanf("%d%d",x+i,y+i);
for(i=0;i<m;i++)
for(j=0;j<n;j++)
if( pozitie(i,j) ) s[i][j]='1';
else s[i][j]='0';
qsort((void *)s, m, sizeof(s[0]), sort_function);
for(i=1;i<m;i++)
if( strcmp(s[i-1],s[i]) )
nrcomp++;
printf("%d\n",nrcomp);
return 0;
}