杭电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);
        
        
    }
}

 

posted @ 2014-10-01 16:08  sequenceaa  阅读(270)  评论(0编辑  收藏  举报