Pagini recente » Cod sursa (job #3157566) | Cod sursa (job #360135) | Cod sursa (job #2870930) | Istoria paginii winter-challenge-2020/solutii/hidden | Cod sursa (job #1728745)
#include <fstream>
using namespace std;
ifstream fin("reuniune.in");
ofstream fout("reuniune.out");
struct drept {
long long x1,y1,x2,y2;
}v[10];
drept inter(int i, int j) {
drept a;
a.x1=max(v[i].x1,v[j].x1);
a.y1=max(v[i].y1,v[j].y1);
a.x2=min(v[i].x2,v[j].x2);
a.y2=min(v[i].y2,v[j].y2);
if(a.x1>a.x2||a.y1>a.y2) a={0,0,0,0};
return a;
}
long long p(int i) {return 2*(v[i].x2-v[i].x1+v[i].y2-v[i].y1);}
long long a(int i) {return (v[i].x2-v[i].x1)*(v[i].y2-v[i].y1);}
int main() {
for(int i=0;i<3;++i) fin>>v[i].x1>>v[i].y1>>v[i].x2>>v[i].y2;
v[3]=inter(0,1);
v[4]=inter(0,2);
v[5]=inter(1,2);
v[6]=inter(3,2);
fout<<a(0)+a(1)+a(2)-a(3)-a(4)-a(5)+a(6)<<' '<<p(0)+p(1)+p(2)-p(3)-p(4)-p(5)+p(6);
}