验证解决方案...... 测试1通过了! 测试2通过了! 测试3失败。 测试4失败。 测试5通过了! 测试6通过了! 测试7失败。 测试8失败。 测试9失败。 测试10失败。
要求:
Solar Doomsday
谁会猜到?世界末日的装置占据了很大的力量。 Lambda指挥官希望用太阳能电池板补充LAMBCHOP的量子反物质反应堆堆芯,她的任务是设置太阳能电池板。
由于空间站外板的性质,其所有太阳能电池板必须是正方形。幸运的是,你有一个非常大而平坦的太阳能材料区域,一对工业级剪刀和足够的MegaCorp太阳能胶带(TM)将任何多余的面板材料拼凑成更多正方形。例如,如果你的总面积为12平方码的太阳能材料,你就可以制作一个3x3的方形面板(总面积为9)。这将留下3平方码,所以你可以将它们变成三个1x1方形太阳能电池板。
编写一个函数答案(区域),它将一个度量单位作为输入,表示您拥有的太阳能电池板的总面积(介于1和1000000之间),并返回您可以制作的最大正方形区域的列表从这些面板开始,首先是最大的正方形。因此,按照上面的例子,答案(12)将返回[9,1,1,1]。
这是我的代码:
import math
def answer(area):
list_num=[]
if area<=0:
print "Please enter a positive integer"
else:
for time in range(1,5):
list_total=[thing**2 for thing in range(1,int(math.sqrt(area)+1))]
if len(list_total)!=0:
list_num.append(list_total[-1])
area-=list_total[-1]
else:
list_num.append(0)
print "(int list) %s" % (list_num)
return list_num
答案 0 :(得分:0)
def count(area):
result = []
while area > 0:
value = int(area ** 0.5)
square = value ** 2
result.append(square)
area -= square
return result