Pagini recente » Cod sursa (job #403475) | Cod sursa (job #2535749) | Statistici Ana Maria Roanghesi (anamaria288) | Cod sursa (job #406520) | Cod sursa (job #596082)
Cod sursa(job #596082)
# include <fstream>
using namespace std;
typedef long long huge;
struct punct
{
huge ax, ay;
huge bx, by;
};
ifstream f ("reuniune.in");
ofstream g ("reuniune.out");
punct A, B, C;
punct intersectie (punct A, punct B)
{
punct C;
C.ax = max (A.ax, B.ax);
C.ay = max (A.ay, B.ay);
C.bx = min (A.bx, B.bx);
C.by = min (A.by, B.by);
return C;
}
inline huge arie (punct A)
{
return (A.bx - A.ax) * (A.by - A.ay);
}
inline huge perimetru (punct A)
{
return (huge)(2LL * (A.bx - A.ax) + 2LL * (A.by - A.ay));
}
int main ()
{
f >> A.ax >> A.ay >> A.bx >> A.by;
f >> B.ax >> B.ay >> B.bx >> B.by;
f >> C.ax >> C.ay >> C.bx >> C.by;
g << arie (A) + arie (B) + arie (C)
- arie (intersectie (A, B)) - arie (intersectie (A, C)) - arie (intersectie (B, C))
+ arie (intersectie (intersectie (A, B), C));
g << ' ';
g << perimetru (A) + perimetru (B) + perimetru (C)
- perimetru (intersectie (A, B)) - perimetru (intersectie (A, C)) - perimetru (intersectie (B, C))
+ perimetru (intersectie (intersectie (A, B), C));
g.close ();
return 0;
}