Pagini recente » Cod sursa (job #1326794) | Cod sursa (job #2340347) | Cod sursa (job #3125037) | Cod sursa (job #1178665) | Cod sursa (job #2368322)
#include <fstream>
#include <map>
using namespace std;
ifstream cin ("regiuni.in");
ofstream cout ("regiuni.out");
const int MOD = 1e9 + 7;
struct Cf {
int a, b, c;
};
struct Punct {
int x, y;
};
int n, m, g, lst;
Cf v[1005];
Punct p[1005];
map <int, int> viz;
bool parteDreapta(Punct p, Cf d) {
return (p.x * d.a + p.y * d.b + d.c > 0);
}
int main() {
cin >> n >> m;
for(int i = 1; i <= n; i++)
cin >> v[i].a >> v[i].b >> v[i].c;
for(int i = 1; i <= m; i++)
cin >> p[i].x >> p[i].y;
for(int i = 1; i <= m; i++) {
int cod = 0;
for(int j = 1; j <= n; j++) {
if(parteDreapta(p[i], v[j]))
cod = (3LL * cod + 1) % MOD;
else
cod = (3LL * cod + 2) % MOD;
}
if(!viz[cod])
g++, viz[cod] = 1;
}
cout << g;
return 0;
}