藍橋杯python訓練題之面積相交

2021-10-22 15:20:29 字數 1710 閱讀 1576

我寫的**沒有判斷兩個矩形是否相交,所以在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位,則你的程式必...