Pagini recente » Cod sursa (job #135794) | Cod sursa (job #624091) | Cod sursa (job #2604226) | Cod sursa (job #535894) | Cod sursa (job #2387529)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("reuniune.in");
ofstream fout("reuniune.out");
struct drp{
long long x,y,a,b;
}d[4];
long long arie(drp A)
{return (A.a-A.x)*(A.b-A.y);}
long long perimetru(drp A)
{return 2*(A.a-A.x+A.b-A.y);}
drp inter(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 && 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++)
fin>>d[i].x>>d[i].y>>d[i].a>>d[i].b;
fout<<arie(d[1])+arie(d[2])+arie(d[3])-arie(inter(d[1],d[2]))-arie(inter(d[1],d[3]))-arie(inter(d[3],d[2]))+arie(inter(inter(d[1],d[2]),d[3]))<<" ";
fout<<perimetru(d[1])+perimetru(d[2])+perimetru(d[3])-perimetru(inter(d[1],d[2]))-perimetru(inter(d[1],d[3]))-perimetru(inter(d[3],d[2]))+perimetru(inter(inter(d[1],d[2]),d[3]))<<endl;
return 0;
}