我自己按我的想法写的Python
from random import *
def stopdrivelow(x):
low = 0
high = x
if high - low < 5:
return 0
else:
x = randint(low,high - 5)
return stopdrivelow(x) + 1
def stopdrivehigh(y):
high = 100
low = y
if high - low < 5:
return 0
else:
y = randint(low + 5,high)
return stopdrivehigh(y) + 1
x = randint(0,95)
y = x + 5
num1 = stopdrivelow(x)
num2 = stopdrivehigh(y)
print(num1 + num2)
输出结果都不超过10
其他同学的Python:
from random import *
def parking(road_start,road_end):
if road_end - road_start < 5:
return 0
else:
start_point = randint(road_start, road_end - 1)
return parking(road_start, start_point) + 1 + parking(start_point + 1, road_end)
t = parking(0,100)
print(t)
输出结果在33左右
可能是我的逻辑不对,我和这位同学的结果相差甚远,但我找不出哪里不对(#-.-)