这是我们遇到的问题:
问题陈述
您是煎饼餐厅里的短时厨师,所以您需要尽快煮煎饼。您有一个平底锅可以同时容纳薄煎饼。您必须使用此锅烹饪numCakes煎饼。每个煎饼必须在每侧上煮5分钟,一旦煎饼开始在一侧上烹饪,则必须在该侧上煮5分钟。但是,当您准备在五分钟后将薄煎饼翻转时,可以将它从平底锅中取出,然后再放回平底锅中进行另一面的烹饪。编写分钟需要的方法,该方法返回在同时容纳容量煎饼的锅中烹饪numCakes煎饼所需的最短时间。请参阅示例。
所需的def分钟数(数字蛋糕,容量):
我已经尝试了各种方法,并且已经使它在大多数情况下都可以使用,但是它并不总是有效,因为我不知道如何容忍有时您必须脱掉一个东西,然后再开始操作。另一只煎饼的一面,然后放回去完成。
def minutesNeeded (numCakes, capacity):
#set some variables
above = numCakes - capacity
below = numCakes - above
if numCakes <= capacity:
time = numCakes * 10 / capacity
return(int(time))
else:
time = below * 10 / capacity + above * 5
return (int(time))
Lemme添加示例:
import math
def minutesNeeded(numCakes, capacity):
return (math.ceil(numCakes / capacity)) * 10
[这里是一个例子:预期15会得到20:32。这是行不通的,因为在这种情况下,您需要做的是先将两块薄煎饼放五分钟(煮那两面),然后再放下薄煎饼并开始第三做饭,第三做饭,再做五分钟。现在您有一个煮熟的煎饼和两个煮熟的煎饼。因此,您再将这两个半熟的薄煎饼再煮五分钟。您总共花了15分钟时间煮了三个薄煎饼,但是并没有花20分钟。
该问题并未指定倒入面糊,翻转薄煎饼或取出薄煎饼所需的时间,因此,为简单起见,我们将假定这些操作花费零时间。那我们知道些什么?
所以我们需要做的是将numCakes
除以capacity
以确定所需的批次数量,将其四舍五入以使其成为偶数批次。然后将批处理数量乘以10分钟:
import math
def minutesNeeded(numCakes, capacity):
return (math.ceil(numCakes / capacity)) * 10