1. 程式人生 > >Python “最短”挑戰(12.27)

Python “最短”挑戰(12.27)

Description

給定一個度數D,如果某一秒鐘表上的三個指標兩兩相差的度數都不小於D的話,就稱這一秒是好的,請你求一天(24小時)中一共有多少時間是好的。

Input

每行一個整數D,輸入-1表示結束。

Output

好秒數佔一天時間的比例,保留小數點後三位。
其餘要求同首題

Sample Input

0
120
90
-1

Sample Output

100.000
0.000
6.255

Reference code

def degree(hand,hour,minute,second):
    if hand==0: return second*
6 if hand==1: return minute*6+second/10 if hand==2: return hour*30+(second+minute*60)/120 def fabs(x): if x<0: x=-x if x>180: x=360-x return x while True: d=int(input()) if d==-1: break t=0 for h in range(12): for m in range(60): for
s in range(60): d1=fabs(degree(0,h,m,s)-degree(1,h,m,s)) d2=fabs(degree(0,h,m,s)-degree(2,h,m,s)) d3=fabs(degree(1,h,m,s)-degree(2,h,m,s)) if d1>=d and d2>=d and d3>=d: t+=1 print('%.3f'%(t/432))