Pagini recente » Cod sursa (job #1306544) | Cod sursa (job #862448) | Cod sursa (job #792232) | Cod sursa (job #1874208) | Cod sursa (job #128947)
Cod sursa(job #128947)
#include<stdio.h>
int n,m,nr,i,j,ok,k,s;
struct{int a,b,c;}d[1001];
struct{int x,y;}p[1001];
int a[1000][1001];
int sgn(int i,int j)
{if(d[i].a*p[j].x+d[i].b*p[j].y+d[i].c>=0) return 1;
else return -1;}
int main()
{freopen("regiuni.in","r",stdin);
freopen("regiuni.out","w",stdout);
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);
a[0][i]=i;}
a[0][0]=m;
nr=0;
for(;n;n--)
for(i=nr;i>=0;i--)
{ok=0;s=sgn(n,a[i][1]);
for(j=2;j<=a[i][0];j++)
if(sgn(n,a[i][j])!=s)
{ok=1;
a[nr+1][++a[nr+1][0]]=a[i][j];
for(k=j;k<n;k++) a[i][k]=a[i][k+1];
a[i][0]--;
j--;}
nr=nr+ok;}
printf("%d",nr+1);
fclose(stdout);
return 0;}