Кто бы догадался? Устройствам внутренних дней принимают много власти. Commander Lambda хочет дополнить квантовую реакторную ядро Antimatter Lambchop с солнечными массивами, и вам было поручено настроить солнечные панели.
Из-за природы наружных панелей космической станции все его солнечные панели должны быть квадратами. К счастью, у вас есть одна очень большая и плоская область солнечного материала, пара индустриальных ножниц, и достаточно мегакорпная солнечная лента (TM), чтобы использовать любой избыточный материал панели на более квадратов. Например, если у вас была общая площадь 12 квадратных ярдов солнечного материала, вы сможете сделать одну площадь 3х3 квадратных панелей (с общей площадью 9). Это оставило бы 3 квадратных ярдов, поэтому вы можете превратить тех на три квадратных солнечных батареях 1×1.
Написать функциональное решение (область), которая принимает в качестве его ввода единую единицу измерения, представляющих общую область солнечных панелей, у вас есть (от 1 до 1000000 включено) и возвращает список областей крупнейших квадратов, которые вы могли бы сделать из тех Панели, начиная с крупнейших квадратов первой. Таким образом, следуя приведенным выше примеру, решение (12) вернется [9, 1, 1, 1].
Тестовые случаи: вход: 15324 Выход: [15129,169,25,1]
Вход: 12 Выход: [9,1,1,1]
Питон
from math import sqrt
def solution(area):
res = []
while area > 0:
square = int(sqrt(area))**2
area -= square
res.append(square)
return res
Оригинал: “https://dev.to/itepsilon/foobar-solar-doomsday-5268”