Я не понимаю, как добиться следующего:
Скажем, у меня есть массив размера X (например, 3000 элементов).Я хочу создать функцию, которая будет растягивать этот массив до размера Y (например, 4000) путем дублирования каждого элемента N.Наряду с другой функцией, выполняющей обратное, удалите все N элементов, например, для размера массива 2000.
Я думаю, это скорее математическая проблема, чем проблема программирования, и, как вы можете сказать, математика не 'моя сильная сторонаВот что у меня есть:
def upsample(originalArray, targetSize):
newArray = []
j = 0
for i in range (0, len(originalArray)):
newArray.append(originalArray[i])
# calculate at what interval items need to be duplicated
# this is what I'm having trouble with
if j == interval:
newArray.append(originalArray[i])
j = 0
j+=1
return newArray
Вот пример того, что я пытаюсь сделать:
# stretch array from 10 to 12 items
originalArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
upsample(originalArray, 11)
# output: [0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 9]
Любая помощь будет высоко ценится