矩形绘制(95%用例)D卷(Java&&Python&&C++&&Node.js&&C语言)

实现一个简单的绘图模块,绘图模块仅支持矩形的绘制和擦除,当新绘制的矩形与之前的图形重叠时,对图形取并集;当新擦除的矩形与之前的图形重叠时,对图形取差集。给定一系列矩形的绘制和擦除操作,计算最终图形的面积。

下面给出示例1和示例2的图示

示例1

两步绘制的矩形如左侧所示,取并集后得到的图形如右侧所示

示例2

第一步绘制的矩形在左侧用实线表示,第二步擦除的矩形在左侧用虚线表示, 取差集后得到的图形如右侧所示

输入描述:

绘图模块采用二维坐标系,输入第一行为操作的数量N,接下来的N行格式为:
d x1 y1 x2 y2,d表示进行绘制操作,(x1, y1)为矩形左上角坐标,(x2, y2)为矩形右下角坐标,或者
e x1 y1 x2 y2,e表示进行擦除操作,(x1, y1)为矩形左上角坐标,(x2, y2)为矩形右下角坐标
坐标为整数,且数据范围为[-100, 100],用例保证坐标有效

输出描述:

输出最终图形的面积

示例1 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

2

d 0 2 2 0

d -1 1 1 -1

输出

7

说明

第一步绘制的矩阵面积为4,第二步绘制的矩形面积为4,但它们重叠部分面积为1,所以取并集后的图形的面积为7

示例2 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

2

d 0 2 2 0

e -1 1 1 -1

输出

3</
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荆赫同艺

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值