Bu bir çeşit mesafe düzenleme sorusudur ve çok kolaydır. Bu konuda sadece beyin ölüyüm ve şimdiye kadar çözemiyorum.
Bir dizi sayı verildiğinde, ör.
[3, 1, 1, 1]
Minimum sayı "hamle" sayısıyla tüm sayılar nasıl en verimli şekilde aynı sayıya dönüştürülür? "Hareket", bir sayıya bir tane eklemek veya çıkarmak anlamına gelir.
Yukarıdaki örnekte, en etkili hamleler şöyledir:
[1, 1, 1, 1]
Bu, ilk hamleyi iki kez azaltarak 2 hareket gerektirir.
Yüzlerce sayının çok daha büyük dizileri göz önüne alındığında, bunu bulmanın en iyi yolunu bulamıyorum.
Başlangıçta yuvarlatılmış ortalama sayıyı hesaplamaya çalıştım (toplamın uzunluğa bölünmesi) ve daha sonra bunları hesaplanan ortalamaya düşürdüm, ancak yukarıdaki örnek 2 yerine 4 hareket gerektiren bunu kırdı.
Sanırım anlayabilirim:
- Ortalama,
- Mod,
- Ortanca
ve minimum mesafeyi seçerek her birinin düzenleme mesafesini alın. Ancak, bunun her durumda doğru olacağından emin değilim. Nasıl bilebilirim?