Cod sursa(job #1106257)

Utilizator AeroHHorea Stefan AeroH Data 12 februarie 2014 17:59:36
Problema Regiuni Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream>
#include <set>
#include <algorithm>
#include <queue>
#include <deque>
#include <cmath>
#include <string>
#define punct pair<double,double>
#define ll long long int
#define x first
#define y second
using namespace std;
ifstream f("regiuni.in");
ofstream g("regiuni.out");
int MOD=1e9+7;
int i,j,k,N,M,cr,X,Y;
long long int hash[1001];
int m[1001][3];
int main()
{
    f>>N>>M;
    for (i=1;i<=N;++i)
        {
            f>>m[i][1]>>m[i][2]>>m[i][3];
        }
    for (i=1;i<=M;++i)
        {
            f>>X>>Y;
            for (j=1;j<=N;++j)
                {
                    if (m[j][1]*X+m[j][2]*Y+m[j][3]>0)
                    {
                    hash[i]+=m[j][1]*900060001+m[j][2]*30001+m[j][3];
                    hash[i]%=MOD;
                    }
                }
        }
    g<<unique(hash+1,hash+M+1)-hash-1;
    return 0;
}