Pagini recente » Cod sursa (job #874374) | Cod sursa (job #2636819) | Cod sursa (job #1428336) | Cod sursa (job #782230) | Cod sursa (job #1901975)
#include <fstream>
using namespace std;ifstream f("reuniune.in");ofstream g("reuniune.out");struct dreptunghi{ long long x1,y1,x2,y2;}a,b,c,d,e,q,h; void intersectie(dreptunghi p, dreptunghi q, dreptunghi &r){ r.x1=max(p.x1,q.x1); r.y1=max(p.y1,q.y1); r.x2=min(p.x2,q.x2); r.y2=min(p.y2,q.y2); if(r.x1>r.x2 || r.y1>r.y2) { r.x1=0; r.y1=0; r.x2=0; r.y2=0; }}long long arie (dreptunghi p){ return ((p.x2-p.x1)*(p.y2-p.y1));} long long perimetru (dreptunghi p){ return(((p.x2-p.x1)+(p.y2-p.y1))*2);} long long z,k,sa,sp;int main(){ f>>a.x1>>a.y1>>a.x2>>a.y2; f>>b.x1>>b.y1>>b.x2>>b.y2; f>>c.x1>>c.y1>>c.x2>>c.y2; intersectie(a,c,d); intersectie(a,b,e); intersectie(b,c,q); intersectie(d,b,h); sa=arie(a)+arie(b)+arie(c)-arie(d)-arie(e)-arie(q)+arie(h); sp=perimetru(a)+perimetru(b)+perimetru(c)-perimetru(d)-perimetru(e)-perimetru(q)+perimetru(h); g<<sa<<' '<<sp; return 0;}