Cod sursa(job #986109)

Utilizator geniucosOncescu Costin geniucos Data 17 august 2013 18:19:04
Problema Regiuni Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<cstdio>
#include<algorithm>
using namespace std;
int mod1,mod2,nr,v,i,j,n,m,ind[1009],A[1009],B[1009],C[1009],x,y,h1[1009],h2[1009];
int main()
{
freopen("regiuni.in","r",stdin);
freopen("regiuni.out","w",stdout);
scanf("%d",&n);
scanf("%d",&m);
for(i=1;i<=n;i++)
{
    scanf("%d",&A[i]);
    scanf("%d",&B[i]);
    scanf("%d",&C[i]);
}
mod1=666013;
mod2=100000007;
for(i=1;i<=m;i++)
{
    scanf("%d",&x);
    scanf("%d",&y);
    for(j=1;j<=n;j++)
    {
        v=(x*A[j]+y*B[j]+C[j]>0);
        h1[i]=((h1[i]<<1)+v)%mod1;
        h2[i]=((h2[i]<<1)+v)%mod2;
    }
}
for(i=1;i<=m;i++)
{
    for(j=1;j<m;j++)
        if(h1[i]==h1[j]&&h2[i]==h2[j]) break;
    if(i==j) nr++;
}
printf("%d\n",nr);
return 0;
}