Cod sursa(job #1147690)

Utilizator nicolaetitus12Nicolae Titus nicolaetitus12 Data 20 martie 2014 02:42:29
Problema Regiuni Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>
#include <set>
#include <vector>
int a[1000], b[1000], c[1000];

int main ()
{
    int x,y;

    std::set<std::vector<int> > reg;
    int l,n;
    std::ifstream fin("regiuni.in");
    std::ofstream fout("regiuni.out");
    fin>>l>>n;

    int actual = (l+31)/32;
    std::vector<int> location(actual);
    for(int i=0;i<l;i++)
    {
        fin>>a[i]>>b[i]>>c[i];    
    }
    for(int i=0;i<n;i++)
    {
        fin>>x>>y;

        for(int j=0;j<actual;j++)
        {
            location[j]=0;  
        } 

        for(int j=0;j<l;j++)
        {
            if((a[j]*x+b[j]*y+c[j])>0)
                location[j/32]|=1<<(j%32);
        }
        reg.insert(location);
    }
    fout<<reg.size();
    fout.close();
    return 0;
}