Pagini recente » Cod sursa (job #1105071) | Cod sursa (job #271906) | Cod sursa (job #1084490) | Cod sursa (job #9742) | Cod sursa (job #1691129)
#include <fstream>
using namespace std;
ifstream fin("reuniune.in");
ofstream fout("reuniune.out");
struct dreptunghi
{
long long l1, c1;
long long l2, c2;
};
dreptunghi X, Y, Z;
dreptunghi rn1, rn2, rn3, rn4;
long long Ar;
long long Prmt;
long long arie(dreptunghi D)
{
return (D.l2-D.l1)*(D.c2-D.c1);
}
long long perim(dreptunghi D)
{
return 2*(D.l2-D.l1)+2*(D.c2-D.c1);
}
void inter(dreptunghi A, dreptunghi B, dreptunghi &C)
{
C.l1=max(A.l1, B.l1);
C.c1=max(A.c1, B.c1);
C.l2=min(A.l2, B.l2);
C.c2=min(A.c2, B.c2);
}
int main()
{
fin >> X.l1 >> X.c1 >> X.l2 >> X.c2;
fin >> Y.l1 >> Y.c1 >> Y.l2 >> Y.c2;
fin >> Z.l1 >> Z.c1 >> Z.l2 >> Z.c2;
inter(X, Y, rn1);
inter(X, Z, rn2);
inter(Y, Z, rn3);
inter(rn1, Z, rn4);
Ar=arie(X)+arie(Y)+arie(Z)-arie(rn1)-arie(rn3)-arie(rn2)+arie(rn4);
Prmt=perim(X)+perim(Y)+perim(Z)-perim(rn1)-perim(rn2)-perim(rn3)+perim(rn4);
fout << Ar << " " << Prmt << '\n';
fin.close();
fout.close();
return 0;
}