1 条题解

  • 1
    @ 2026-9-7 18:40:36
    #include <iomanip>
    #include <algorithm>
    using namespace std;
    
    int main()
    {
        double x1,y1,x2,y2;
        // 读第一个矩形
        cin >> x1 >> y1 >> x2 >> y2;
        double r1_xmin = min(x1,x2);
        double r1_xmax = max(x1,x2);
        double r1_ymin = min(y1,y2);
        double r1_ymax = max(y1,y2);
    
        // 读第二个矩形
        cin >> x1 >> y1 >> x2 >> y2;
        double r2_xmin = min(x1,x2);
        double r2_xmax = max(x1,x2);
        double r2_ymin = min(y1,y2);
        double r2_ymax = max(y1,y2);
    
        // 求交集边界
        double ix1 = max(r1_xmin, r2_xmin);
        double iy1 = max(r1_ymin, r2_ymin);
        double ix2 = min(r1_xmax, r2_xmax);
        double iy2 = min(r1_ymax, r2_ymax);
    
        double area = 0.0;
        if(ix1 < ix2 && iy1 < iy2)
        {
            area = (ix2 - ix1) * (iy2 - iy1);
        }
        // 保留两位小数输出
        cout << fixed << setprecision(2) << area << endl;
        return 0;
    }
    
    
    
    • 1

    信息

    ID
    1050
    时间
    1000ms
    内存
    128MiB
    难度
    10
    标签
    递交数
    5
    已通过
    3
    上传者