我寫的**沒有判斷兩個矩形是否相交,所以在oj系統中有兩組資料沒有通過,沒有通過的兩組資料都是兩矩形沒有相交。注意資料型別要用float而不是int,我的**如下
a1=
input()
.split(
)b1=
input()
.split()a=
[float
(a1[0]
),float
(a1[1]
)]b=[
float
(a1[2]
),float
(a1[3]
)]c=[
float
(b1[0]
),float
(b1[1]
)]d=[
float
(b1[2]
),float
(b1[3]
)]s=[a[0]
,b[0
],c[0]
,d[0]]
t=[a[1]
,b[1
],c[1]
,d[1]]
sa=max
(s)si=
min(s)
s.remove(sa)
s.remove(si)
ta=max
(t)ti=
min(t)
t.remove(ta)
t.remove(ti)
s.sort(
)t.sort(
)area=
(s[1
]-s[0]
)*(t[1
]-t[0]
)print
('%.2f'
%area)
標準答案
rect_1 =
list
(map
(float
,input()
.split())
)rect_2 =
list
(map
(float
,input()
.split())
)area =
0x1 =
max(
min(rect_1[0]
, rect_1[2]
),min(rect_2[0]
, rect_2[2]
))y1 =
max(
min(rect_1[1]
, rect_1[3]
),min(rect_2[1]
, rect_2[3]
))x2 =
min(
max(rect_1[0]
, rect_1[2]
),max(rect_2[0]
, rect_2[2]
))y2 =
min(
max(rect_1[1]
, rect_1[3]
),max(rect_2[1]
, rect_2[3]
))if x1 < x2 and y1 < y2:
area =
(x2 - x1)
*(y2 - y1)
print
('%.2f'
% area)
else
:print
('%.2f'
% area)
藍橋杯python 入門訓練 圓的面積
問題描述 給定圓的半徑r,求圓的面積。輸入格式 輸入包含乙個整數r,表示圓的半徑。輸出格式 輸出一行,包含乙個實數,四捨五入保留小數點後7位,表示圓的面積。說明 在本題中,輸入是乙個整數,但是輸出是乙個實數。對於實數輸出的問題,請一定看清楚實數輸出的要求,比如本題中要求保留小數點後7位,則你的程式必...
藍橋杯訓練 入門訓練 圓的面積
問題描述 給定圓的半徑r,求圓的面積。輸入格式 輸入包含乙個整數r,表示圓的半徑。輸出格式 輸出一行,包含乙個實數,四捨五入保留小數點後7位,表示圓的面積。說明 在本題中,輸入是乙個整數,但是輸出是乙個實數。對於實數輸出的問題,請一定看清楚實數輸出的要求,比如本題中要求保留小數點後7位,則你的程式必...
藍橋杯 入門訓練 圓的面積
問題描述 給定圓的半徑r,求圓的面積。輸入格式 輸入包含乙個整數r,表示圓的半徑。輸出格式 輸出一行,包含乙個實數,四捨五入保留小數點後7位,表示圓的面積。說明 在本題中,輸入是乙個整數,但是輸出是乙個實數。對於實數輸出的問題,請一定看清楚實數輸出的要求,比如本題中要求保留小數點後7位,則你的程式必...