Cod sursa(job #2335053)

Utilizator iandavidroIan David Bocioaca iandavidro Data 3 februarie 2019 15:58:07
Problema Reuniune Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
#define ll long long
using namespace std;
ifstream f("reuniune.in");
ofstream g("reuniune.out");
struct drp {ll x,y,a,b;} d[4];
ll ar(drp A) {return (A.a-A.x)*(A.b-A.y);}
ll per(drp A) {return 2*(A.a-A.x+A.b-A.y);}
drp inters(drp A, drp B)
{   drp C,D;
    C.x=max(A.x,B.x);
    C.y=max(A.y,B.y);
    C.a=min(A.a,B.a);
    C.b=min(A.b,B.b);
    if(C.x<=C.a and C.y<=C.b) return C;
    D.x=D.y=D.a=D.b=0;
    return D;
}
int main()
{   for(int i=1;i<=3;i++) f>>d[i].x>>d[i].y>>d[i].a>>d[i].b;
    g<<ar(d[1])+ar(d[2])+ar(d[3])-ar(inters(d[1],d[2]))-ar(inters(d[1],d[3]))-ar(inters(d[3],d[2]))+ar(inters(inters(d[1],d[2]),d[3]))<<" ";
    g<<per(d[1])+per(d[2])+per(d[3])-per(inters(d[1],d[2]))-per(inters(d[1],d[3]))-per(inters(d[3],d[2]))+per(inters(inters(d[1],d[2]),d[3]));
    g.close();
    return 0;
}