Upside-Down Pyramid Addition, bir numara listesini alma ve bir numaraya ulaşana kadar bunları art arda toplama işlemidir.
Rakamlar 2, 1, 1
verildiğinde aşağıdaki işlem gerçekleşir:
2 1 1
3 2
5
Bu sayıyla biter 5
.
SENİN GÖREVİN
Başına Düşen Bir Piramidin (Yükselen) sağ tarafı göz önüne alındığında, orijinal listeye geri dönecek bir program veya işlev yazın.
Yeni Ekstra Zorluk : Bunu O (n ^ 2) 'dan daha düşük bir sürede yapmayı deneyin
ÖRNEK
f([5, 2, 1]) => [2, 1, 1]
f([84,42,21,10,2]) => [4,7,3,8,2]
NOT: Baş Aşağı Piramidi hiçbir zaman boş olmayacak ve her zaman SADECE pozitif tamsayılardan oluşacaktır.
Try doing this in less than O(n)
Elbette n boyutlu bir dizi tahsis etmek veya içindeki O (n) maddelerini O (n) karmaşıklığından daha hızlı değiştirmek imkansız mı?