杭电2056

#include<iostream>

using namespace std;

double max(double a,double b)

{

    if(a>b)

        return a;

    else

        return b;

}

double min(double a,double b)

{

    if(a<b)

        return a;

    else

        return b;

}

int main()

{

    double minx1,miny1,maxx1,maxy1,minx2,miny2,maxx2,maxy2,minx,miny,maxx,maxy,res;

    while(cin>>minx1>>miny1>>maxx1>>maxy1>>minx2>>miny2>>maxx2>>maxy2)

    {

        if(minx1>maxx1)

            swap(minx1,maxx1);

        if(miny1>maxy1)

            swap(miny1,maxy1);

        if(minx2>maxx2)

            swap(minx2,maxx2);

        if(miny2>maxy2)

            swap(miny2,maxy2);

        minx=max(minx1,minx2);

        miny=max(miny1,miny2);

        maxx=min(maxx1,maxx2);

        maxy=min(maxy1,maxy2);

        if(minx>maxx||miny>maxy)

            res=0;

            

        else

        res=(maxx-minx)*(maxy-miny);

        printf("%.2f\n",res);

        

        

    }

}

 

你可能感兴趣的:(杭电)