Cod sursa(job #2461346)

Utilizator vvvlll50Lazar Vlad vvvlll50 Data 25 septembrie 2019 14:09:11
Problema Reuniune Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
#include <iostream>
#include <fstream>
#include <cmath>

using namespace std;

ifstream f("reuniune.in");
ofstream g("reuniune.out");

struct quat{long long  x1,x2,y1,y2;}v[4];
long long minx1=1000000000,miny1=1000000000,maxx2=-1000000000,maxy2=-1000000000;
long long minx2=1000000000,miny2=1000000000,maxx1=-1000000000,maxy1=-1000000000;
long long  i,ar,s,j,in;
int main()
{
 for(i=1;i<=3;i++){
                   f>>v[i].x1>>v[i].y1>>v[i].x2>>v[i].y2;
                   ar+=1LL*abs(v[i].x2-v[i].x1)*abs(v[i].y2-v[i].y1);
                   minx1=min(v[i].x1,minx1);
                   miny1=min(v[i].y1,miny1);
                   maxx2=max(v[i].x2,maxx2);
                   maxy2=max(v[i].y2,maxy2);
                   maxx1=max(v[i].x1,maxx1);
                   maxy1=max(v[i].y1,maxy1);
                   minx2=min(v[i].x2,minx2);
                   miny2=min(v[i].y2,miny2);
                  }
 for(i=1;i<=2;i++)for(j=i+1;j<=3;j++)s+=1LL*(min(v[i].x2,v[j].x2)-max(v[i].x1,v[j].x1))*(min(v[i].y2,v[j].y2)-max(v[i].y1,v[j].y1));
 in=1LL*abs(minx2-maxx1)*abs(miny2-maxy1);
 g<<ar-s+in<<" "<<2*abs(maxx2-minx1)+2*abs(maxy2-miny1);
    return 0;
}