AcWing 1749. 阻挡广告牌 II py
原题链接
简单
作者:
Akac
,
2022-04-03 20:45:40
,
所有人可见
,
阅读 101
py 代码
from collections import deque
import sys
a = []
a.append(list(map(int,input().strip().split())))
a.append(list(map(int,input().strip().split())))
for i in range(2):
for j in range(4):
a[i][j] += 1000
def finds(a,b,c,d):
return max(0,min(b,d) - max(a,c))
def compute(a,b,c,d):
return (d-b)*(c-a)
res1 = finds(a[0][0],a[0][2],a[1][0],a[1][2])
res2 = finds(a[0][1],a[0][3],a[1][1],a[1][3])
ans = compute(a[0][0],a[0][1],a[0][2],a[0][3])
if res2 == a[0][3]-a[0][1]: print(ans-res1*res2)
elif res1 == a[0][2]-a[0][0]:
if a[0][1] < a[1][1] < a[0][3] and a[0][1] < a[1][3] < a[0][3]:print(ans)
else:print(ans-res1*res2)
else:print(ans)