Bu siteyi bir süredir kaydırıyorum, ancak son zamanlarda bazı zorlukları denemekle gerçekten çok ilgilenmiştim. Elimde mevcut kod-golf konularının bazılarında denemek niyetindeydim, fakat dün bir süredir İnternet erişimim yoktu ve bu arada, kendi zorluğumu düşündüm.
Göreviniz, bir Kayan Nokta dizisi a
ve bir tamsayı alan bir program veya işlev oluşturmak ve n
ardından her bir değeri a
, n
zamanın yanındaki iki değerin ortalamasına ayarlar . Art arda artan değerlerle kullanıldığında n
, dalga benzeri bir hareket oluşturur:
Özellikleri:
- İçinde yalnızca bir öğe
a
varsan
veya 0 veya daha az ise, program orijinal diziyi döndürmelidir. - Girişler ve çıkışlar, görünür bir şekilde ayrıldıkları sürece, istediğiniz herhangi bir biçimde olabilir.
Her adım için:
- İçindeki ilk madde
a
, kendisinin ve bir sonraki maddenin ortalaması olmalıdır. - İçindeki son madde
a
, kendisinin ve önceki öğenin ortalaması olmalıdır. - Başka bir öğe
a
önceki öğenin ve sonraki öğenin ortalaması olmalıdır. - Geçerli olanı değil önceki adımın dizisini hesapladığınızdan emin olun!
Test durumları: NOT: Giriş / çıkışlarınızın bu biçimde olması gerekmez!
[0, 0, 1, 0, 0], 1 -> [0, 0.5, 0, 0.5, 0]
[0, 0, 1, 0, 0], 2 -> [0.25, 0, 0.5, 0, 0.25]
[0, 0, 1, 0, 0], 0 -> [0, 0, 1, 0, 0]
[0, 0, 1, 0, 0], -39 -> [0, 0, 1, 0, 0]
[0, 16, 32, 16, 0], 1 -> [8, 16, 16, 16, 8]
[0, 1, 2, 3, 4, 5], 1 -> [0.5, 1, 2, 3, 4, 4.5]
[0, 64], 1 -> [32, 32]
[0], 482 -> [0]
[32, 32, 32, 16, 64, 16, 32, 32, 32], 4 -> [33, 27, 40, 22, 44, 22, 40, 27, 33]
Bu kod golf , bayt cinsinden en kısa cevap kazanır. Kazanan bir hafta içinde (1 Ağustos'ta) seçilecek. İyi şanslar!
n
5 olmalı, 5 değil.
n
temin edilmediğinden vea
tedarik edilmeyen durumlar olmadığından - gerçekten fazla bir şey eklemiyorlar.