Pagini recente » Cod sursa (job #472307) | Cod sursa (job #2396995) | Cod sursa (job #2702593) | Cod sursa (job #722181) | Cod sursa (job #767307)
Cod sursa(job #767307)
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
ifstream f("reuniune.in");
ofstream g("reuniune.out");
long long a[4][9],aria=0,aria1,aria2,aria3,x1=0,x2=0,y1=0,y2=0,aria4=0,aria5=0,aria6=0,aria7=0,perm=0,perm1=0,perm2=0,perm3=0,perm4=0,perm5=0,perm6=0,perm7=0;
bool ok=0;
for(int i=1;i<=3;i++)
{
f>>a[i][1]>>a[i][2]>>a[i][3]>>a[i][4];
a[i][5]=a[i][1];
a[i][6]=a[i][4];
a[i][7]=a[i][3];
a[i][8]=a[i][2];
}
aria1=(a[1][4]-a[1][2])*(a[1][3]-a[1][1]);
perm1=2*(a[1][4]-a[1][2])+2*(a[1][3]-a[1][1]);
aria2=(a[2][4]-a[2][2])*(a[2][3]-a[2][1]);
perm2=2*(a[2][4]-a[2][2])+2*(a[2][3]-a[2][1]);
aria3=(a[3][4]-a[3][2])*(a[3][3]-a[3][1]);
perm3=2*(a[3][4]-a[3][2])+2*(a[3][3]-a[3][1]);
//cout<<aria1<<endl<<aria2<<endl<<aria3<<endl;
if(a[1][1]>a[2][1])x1=a[1][1];
else x1=a[2][1];
if(a[1][3]<a[2][3])x2=a[1][3];
else x2=a[2][3];
if(a[1][2]>a[2][2])y1=a[1][2];
else y1=a[2][2];
if(a[1][4]<a[2][4])y2=a[1][4];
else y2=a[2][4];
//cout<<x1<<" "<<x2<<" "<<y1<<" "<<y2<<endl;
if(y2>y1||x2>x1)
{
// cout<<x2<<" "<<x1<<" "<<y2<<" "<<y1<<endl;
aria4=(x2-x1)*(y2-y1);
if(x2==x1||y2==y1) perm4=(x2-x1)+(y2-y1);
else perm4=2*(x2-x1)+2*(y2-y1);
}
else ok=1;
if(a[1][1]>a[3][1])x1=a[1][1];
else x1=a[3][1];
if(a[1][3]<a[3][3])x2=a[1][3];
else x2=a[3][3];
if(a[1][2]>a[3][2])y1=a[1][2];
else y1=a[3][2];
if(a[1][4]<a[3][4])y2=a[1][4];
else y2=a[3][4];
//cout<<x1<<" "<<x2<<" "<<y1<<" "<<y2<<endl;
if(y2>y1||x2>x1)
{
//cout<<x2<<" "<<x1<<" "<<y2<<" "<<y1<<endl;
aria5=(x2-x1)*(y2-y1);
if(x2==x1||y2==y1)perm5=2*(x2-x1)+2*(y2-y1);
else perm5=(x2-x1)+(y2-y1);
}
else ok=1;
if(a[2][1]>a[3][1])x1=a[2][1];
else x1=a[3][1];
if(a[2][3]<a[3][3])x2=a[2][3];
else x2=a[3][3];
if(a[2][2]>a[3][2])y1=a[2][2];
else y1=a[3][2];
if(a[2][4]<a[3][4])y2=a[2][4];
else y2=a[3][4];
//cout<<x1<<" "<<x2<<" "<<y1<<" "<<y2<<endl;
if(y2>y1||x2>x1)
{
aria6=(x2-x1)*(y2-y1);
if(x2==x1||y2==y1)perm6=2*(x2-x1)+2*(y2-y1);
else perm6=2*(x2-x1)+2*(y2-y1);
}
else ok=1;
if(ok==0)
{
if(a[2][1]>a[3][1]&&a[2][1]>a[1][1])x1=a[2][1];
else if(a[3][1]>a[2][1]&&a[3][1]>a[2][1] ) x1=a[3][1];
else x1=a[1][1];
if(a[2][3]<a[3][3]&&a[2][3]<a[1][3])y2=a[2][3];
else if(a[3][3]<a[2][3]&&a[3][3]<a[2][3]) y2=a[3][3];
else y2=a[1][3];
if(a[2][2]>a[3][2]&&a[2][2]>a[1][2])y1=a[2][2];
else if(a[3][2]>a[2][2]&&a[3][2]>a[2][2] ) y1=a[3][2];
else y1=a[1][2];
if(a[2][4]<a[3][4]&&a[2][4]<a[1][4])y2=a[2][4];
else if(a[3][4]<a[2][4]&&a[3][4]<a[2][4]) y2=a[3][4];
else y2=a[1][4];
//cout<<x1<<" "<<x2<<" "<<y1<<" "<<y2<<endl;
//cout<<x2<<" "<<x1<<" "<<y2<<" "<<y1<<endl;
aria7=(x2-x1)*(y2-y1);
perm7=2*(x2-x1)+2*(y2-y1);
}
//cout<<aria4<<endl<<aria5<<endl<<aria6<<endl<<aria7<<endl;
aria=aria1+aria2+aria3-aria4-aria5-aria6+aria7;
perm=perm1+perm2+perm3-perm4-perm5-perm6+perm7;
g<<aria<<" "<<perm<<endl;
/*
for(int i=1;i<=3;i++)
{
g<<endl;
for(int j=1;j<=8;j++)
g<<a[i][j]<<" ";
}
*/
//cout<<endl;
//system("pause");
return 0;
}
//if(!(((x2-x1)>=((a[2][3]-a[2][1])+(a[3][3]-a[3][1])))||((y2-y1)>=((a[2][4]-a[2][2])+(a[3][4]-a[3][2])))))
/*{
cout<<!(((x2-x1)>=((a[2][3]-a[2][1])+(a[3][3]-a[3][1])))||((y2-y1)>=((a[2][4]-a[2][2])+(a[3][4]-a[3][2]))))<<endl;
cout<<((x2-x1)>=((a[2][3]-a[2][1])+(a[3][3]-a[3][1])))<<endl;
cout<<((y2-y1)>=((a[2][4]-a[2][2])+(a[3][4]-a[3][2])))<<endl;
cout<<(a[2][3]-a[2][1])+(a[3][3]-a[3][1])<<"linie"<<endl;
cout<<(a[2][4]-a[2][2])+(a[3][4]-a[3][2])<<"coloana"<<endl;
cout<<x2<<" "<<x1<<" "<<y2<<" "<<y1<<endl;
*/