Rectangle Area

ㅋㅋ·2022년 11월 17일
0

알고리즘-leetcode

목록 보기
51/135

두 사각형의 왼쪽 하단과 오른쪽 상단 점의 x, y 좌표를 받고

두 사각형의 전체 면적을 구하는 문제

class Solution {
public:
    int computeArea(int ax1, int ay1, int ax2, int ay2, int bx1, int by1, int bx2, int by2) {

        int aArea = (ax2 - ax1) * (ay2 - ay1);
        int bArea = (bx2 - bx1) * (by2 - by1);

        int x = min(ax2, bx2) - max(ax1, bx1);
        int y = min(ay2, by2) - max(ay1, by1);

        int result{aArea + bArea};
        if (0 < x && 0 < y)
        {
            result -= (x * y);
        }

        return result;
    }
};

0개의 댓글