Cod sursa(job #1778005)

Utilizator tudorgalatanRoman Tudor tudorgalatan Data 13 octombrie 2016 10:46:58
Problema Ograzi Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.18 kb
#include <fstream>

using namespace std;

unsigned short int N;
unsigned int M, W, H;
unsigned int x[50001], y[50001];
unsigned int a[100001], b[100001];

unsigned int i, j, k, maxX, maxY;

unsigned int sol;

int main ()
{
    ifstream fin ("ograzi.in");
    fin >> N >> M >> W >> H;
    for (i=1; i<=N; i++)
        fin >> x[i] >> y[i];
    for (i=1; i<=M; i++)
        fin >> a[i] >> b[i];
    fin.close();
    maxX = x[1];
    maxY = y[1];
    for (i=1; i<=N; i++)
    {
        if (x[i] > maxX)
            maxX = x[i];
        if (y[i] > maxY)
            maxY = y[i];
    }
    for (i=1; i<=M; i++)
    {
        if (a[i] > maxX)
            maxX = a[i];
        if (b[i] > maxY)
            maxY = b[i];
    }
    unsigned int matrix[maxX+1][maxY+1];
    for (i=1; i<=maxX; i++)
        for (j=1; j<=maxY; j++)
            matrix[i][j] = 0;
    for (k=1; k<=N; k++)
        for (i=x[k]; i<=x[k]+W; i++)
            for (j=y[k]; j<=y[k]+H; j++)
                matrix[i][j] = 1;
    for (i=1; i<=M; i++)
        if (matrix[a[i]][b[i]] == 1)
            sol++;
    ofstream fout ("ograzi.out");
    fout << sol;
    fout.close();
    return 0;
}