Pagini recente » Profil FlorinIoan | Cod sursa (job #119914) | Cod sursa (job #1649110) | Cod sursa (job #1010679) | Cod sursa (job #1734876)
//(c) 2016.... nevermind
#include <fstream>
using namespace std;
ifstream fi("reuniune.in");
ofstream fo("reuniune.out");
typedef struct sqrs{long long l1,c1,l2,c2;} SQRS;
SQRS p1,p2,p3,p1_2,p1_3,p2_3,p1_2_3;
long long arie,per;
void sqrs_inters(SQRS &rez, SQRS a, SQRS b)
{
rez.l1=max(a.l1,b.l1);
rez.c1=max(a.c1,b.c1);
rez.l2=min(a.l2,b.l2);
rez.c2=min(a.c2,b.c2);
if(rez.l1>rez.l2 || rez.c1>rez.c2)
{
rez.l1=0;
rez.c1=0;
rez.l2=0;
rez.c2=0;
}
}
long long surf(SQRS a)
{
return (a.l2-a.l1)*(a.c2-a.c1);
}
long long peri(SQRS a)
{
return 2*((a.l2-a.l1)+(a.c2-a.c1));
}
int main()
{
fi>>p1.l1>>p1.c1>>p1.l2>>p1.c2;
fi>>p2.l1>>p2.c1>>p2.l2>>p2.c2;
fi>>p3.l1>>p3.c1>>p3.l2>>p3.c2;
sqrs_inters(p1_2,p1,p2);
sqrs_inters(p1_3,p1,p3);
sqrs_inters(p2_3,p2,p3);
sqrs_inters(p1_2_3,p1_2,p3);
arie=surf(p1)+surf(p2)+surf(p3)-surf(p1_2)-surf(p2_3)-surf(p1_3)+surf(p1_2_3);
per=peri(p1)+peri(p2)+peri(p3)-peri(p1_2)-peri(p2_3)-peri(p1_3)+peri(p1_2_3);
fo<<arie<<" "<<per<<"\n";
fi.close();
fo.close();
return 0;
}