Pagini recente » Cod sursa (job #1715521) | Cod sursa (job #407931) | Cod sursa (job #2141154) | Cod sursa (job #1074928) | Cod sursa (job #474168)
Cod sursa(job #474168)
#include <fstream>
using namespace std;
struct drept{long long x,y,z,t;};
ifstream in("reuniune.in");
ofstream out("reuniune.out");
inline drept sec(drept a,drept b)
{
drept r;
r.x=max(a.x,b.x);
r.y=max(a.y,b.y);
r.z=min(a.z,b.z);
r.t=min(a.t,b.t);
if (r.x>r.z || r.y>r.t)
r.x=r.y=r.z=r.t=0;
return r;
}
inline long long s(drept a)
{
return (a.z-a.x)*(a.t-a.y);
}
inline long long p(drept a)
{
return a.z-a.x+a.t-a.y<<1;
}
int main()
{
drept a,b,c;
in>>a.x>>a.y>>a.z>>a.t;
in>>b.x>>b.y>>b.z>>b.t;
in>>c.x>>c.y>>c.z>>c.t;
out<<s(a)+s(b)+s(c)-s(sec(a,b))-s(sec(c,b))-s(sec(a,c))+s(sec(sec(a,b),c))<<" ";
out<<p(a)+p(b)+p(c)-p(sec(a,b))-p(sec(c,b))-p(sec(a,c))+p(sec(sec(a,b),c))<<"\n";
return 0;
}