Pagini recente » Cod sursa (job #1981097) | Cod sursa (job #1692136) | Cod sursa (job #1170591) | Cod sursa (job #39200) | Cod sursa (job #1364686)
#include<cstdio>
typedef int var;
//ifstream fin("regiuni.in");
//ofstream fout("regiuni.out");
const var MAXN = 1001;
const var P1 = 666013,
P2 = 123201,
P3 = 9381;
var *A, *B, *H, *C, hsize;
var ind;
void check_add(const var &val) {
for(ind=0; ind<hsize; ind++) {
if(H[ind] == val)
return;
}
H[hsize++]=val;
}
int main() {
freopen("regiuni.in","r", stdin);
freopen("regiuni.out","w",stdout);
var n, m, x, y, i, j, val1, val2;
bool rez;
scanf("%d%d",&n,&m);
A = new var[n+1];
B = new var[n+1];
C = new var[n+1];
H = new var[m+1];
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);
val1 = val2 = 0;
for(j=1; j<=n; j++) {
rez = (A[j]*x + B[j]*y + C[j] > 0);
val1 = val1*2 + rez;
val2 = val2*2 + rez;
val1 %= P1;
val2 %= P2;
}
check_add(val1*P3+val2);
}
printf("%d", hsize);
return 0;
}