Cod sursa(job #42618)

Utilizator pauldbPaul-Dan Baltescu pauldb Data 29 martie 2007 12:57:28
Problema Regiuni Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <stdio.h>

#define maxn 1010

#define mod 50021
#define baza 33

int n,m,sol;
int a[maxn],b[maxn],c[maxn];
char h[mod];

int main()
{
    freopen("regiuni.in","r",stdin);
    freopen("regiuni.out","w",stdout);
    
    scanf("%d %d ",&n,&m);
    
    int i,p,r,j,x,y;
    
    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);
        p=0;
        r=1;
        for (j=1;j<=n;j++) 
        {
            r=(r*baza)%mod;
            if (a[j]*x+b[j]*y+c[j]>0) p=(p+r)%mod;
        }
          
        if (h[p]==0)
        {
            h[p]=1;
            sol++;
        }
    }    
    
    printf("%d\n",sol);
    
    return 0;
}