Pagini recente » Cod sursa (job #130746) | Cod sursa (job #210979) | Cod sursa (job #1694898) | Cod sursa (job #1485089) | Cod sursa (job #37556)
Cod sursa(job #37556)
#include <cstdio>
#include <set>
#define maxn 1024
using namespace std;
struct point { int x, y;};
point x[maxn];
int a[maxn], b[maxn], c[maxn];
int n, m;
void citire()
{
freopen("regiuni.in", "r", stdin);
scanf("%d %d\n", &n, &m);
int i;
for(i=1;i<=n;i++) scanf("%d %d %d\n", &a[i], &b[i], &c[i]);
for(i=1;i<=m;i++) scanf("%d %d\n", &x[i].x, &x[i].y);
}
int s[maxn];
int verifica(int i, int j)
{
point t=x[j];
long long r=t.x*a[i]+t.y*b[i]+c[i];
if(r>0) return 1;
return 0;
}
void calcul()
{
int i, j;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
if(verifica(i, j)) s[i]++;
}
set<int>Q;
for(i=1;i<=n;i++) Q.insert(s[i]);
freopen("regiuni.out", "w", stdout);
printf("%d\n", Q.size());
// for(i=1;i<=n;i++) printf("%d ", s[i]);
}
int main()
{
citire();
calcul();
return 0;
}