Cod sursa(job #1897514)

Utilizator lflorin29Florin Laiu lflorin29 Data 1 martie 2017 14:59:24
Problema Regiuni Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <bits/stdc++.h>

using namespace std;

const int nMax = 1002;
const int C = 73;
const int p = 1e9 + 7;

int n, m, a[nMax], b[nMax], c[nMax], x[nMax], y[nMax];
int64_t state[nMax];

int semn(int posdr, int i) {
	return a[posdr] * x[i] + b[posdr] * y[i] + c[posdr];
}

int main() {
	ifstream cin("regiuni.in");
	ofstream cout("regiuni.out");
	cin >> n >> m;

	for (int i = 1; i <= n; ++i)
		cin >> a[i] >> b[i] >> c[i];

	for (int i = 1; i <= m; ++i) {
		cin >> x[i] >> y[i];
	}

	for (int i = 1; i <= m; ++i)
		for (int j = 1; j <= n; ++j) {
			int val = semn(i, j) < 0;
			val += C;
			state[i] = state[i] * p + val;
		}

	set<int64_t>stari;

	for (int i = 1; i <= m; ++i)
		stari.insert(state[i]);

	cout << stari.size();
}