Pagini recente » Cod sursa (job #2707777) | Cod sursa (job #1041081) | Cod sursa (job #2930483) | Cod sursa (job #789343) | Cod sursa (job #626034)
Cod sursa(job #626034)
#include<iostream>
#include<fstream>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long ll;
typedef struct drept
{
ll ax,ay,bx,by;
}drept;
inline ll a(drept x)
{
return (x.bx-x.ax)*(x.by-x.ay);
}
inline ll p(drept x)
{
return(2LL*(x.bx-x.ax)+2LL*(x.by-x.ay));
}
inline drept i(drept x,drept y)
{
drept IN;
IN.ax=max(x.ax,y.ax);
IN.ay=max(x.ay,y.ay);
IN.bx=min(x.bx,y.bx);
IN.by=min(x.by,y.by);
if(IN.ax >IN.bx || IN.ay>IN.by)
IN.ax=IN.ay=IN.bx=IN.by=0;
return IN;
}
int main()
{
ifstream fin("reuniune.in");
ofstream fout("reuniune.out");
ll x,y;
drept A,B,C;
fin>>A.ax>>A.ay>>A.bx>>A.by;
fin>>B.ax>>B.ay>>B.bx>>B.by;
fin>>C.ax>>C.ay>>C.bx>>C.by;
x=a(A)+a(B)+a(C)-a(i(A,B))-a(i(A,C))-a(i(B,C))+a(i(A,i(B,C)));
y=p(A)+p(B)+p(C)-p(i(A,B))-p(i(A,C))-p(i(B,C))+p(i(A,i(B,C)));
fout<<x<<" "<<y;
return 0;
}