华为OD机试-矩形相交的面积

// Online C++ compiler to run C++ program online
#include<iostream>
#include<vector>
#include<stdlib.h>
#include<algorithm>
#include<iomanip>
#include<string.h>
#include<exception> 
#include<map>
#include<cmath>
#include<unordered_map>
#include<set>
#include<climits>
#include<ctype.h>
#include<queue>
#include<stack>
#include<list>
using namespace std;


int main() {
    // 3个矩形

    int left, top, right, down;
    for (int i = 0; i < 3; ++i)
    {
        int x, y, w, h;
        cin >> x >> y >> w >> h;

        w = x + w;
        h = y - h;

        if (0 == i)
        {
            left = x;
            top = y;
            right = w;
            down = h;
            continue;
        }

        left = max(left, x);
        top = min(top, y);
        right = min(right, w);
        down = max(down, h);
    }

    int area = (right - left) * (top - down);

    cout << area << endl;
    return 0;
}
// Online C++ compiler to run C++ program online #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 3个矩形 int left, top, right, down; for (int i = 0; i < 3; ++i) { int x, y, w, h; cin >> x >> y >> w >> h; w = x + w; h = y - h; if (0 == i) { left = x; top = y; right = w; down = h; continue; } left = max(left, x); top = min(top, y); right = min(right, w); down = max(down, h); } int area = (right - left) * (top - down); cout << area << endl; return 0; }
经验分享 程序员 微信小程序 职场和发展