Pagini recente » Cod sursa (job #394709) | Cod sursa (job #2111878) | Cod sursa (job #2850249) | Cod sursa (job #1167392) | Cod sursa (job #331661)
Cod sursa(job #331661)
#include <stdio.h>
struct dreptunghi
{
int a,b,c,d;
};
dreptunghi v[5];
long long arie,perimetru;
long long modul(long long x)
{
if (x<0)
return -x;
return x;
}
int max(int a,int b)
{
if (a>b)
return a;
return b;
}
int min(int a,int b)
{
if (a<b)
return a;
return b;
}
int main()
{
freopen("reuniune.in","r",stdin);
freopen("reuniune.out","w",stdout);
int i,crd1,crd2,crd3,crd4;
for (i=1; i<=3; i++)
{
scanf("%d%d%d%d",&v[i].a,&v[i].b,&v[i].c,&v[i].d);
arie=(long long)arie+(long long)modul(v[i].c-v[i].a)*modul(v[i].d-v[i].b);
perimetru=(long long)perimetru+((long long)modul(v[i].c-v[i].a)+modul(v[i].d-v[i].b))*2;
}
for (i=2; i<=3; i++)
{
crd1=v[i].a;
crd2=max(v[i].b,v[1].b);
crd3=min(v[i].c,v[1].c);
crd4=min(v[i].d,v[1].d);
arie=(long long)arie-(long long)modul(crd3-crd1)*modul(crd4-crd2);
perimetru=(long long)perimetru-((long long)modul(crd3-crd1)+modul(crd4-crd2))*2;
}
printf("%lld ",arie);
printf("%lld\n",perimetru);
return 0;
}