Menu
CoddyTech

Chocolate Distribution Problem

Bazı çikolata paketlerin var ve packets[i], i paketindeki çikolata sayısını ifade eder. m öğrencinin her biri tam olarak bir paket alır, yani m farklı paket dağıtılır. Dağıtılan en büyük ve en küçük paket arasındaki farkın mümkün olduğunca küçük olması için paketleri seç.

Bu mümkün olan en küçük farkı döndüren minDifference adlı bir fonksiyon yaz.

Fonksiyon

minDifference(packets: integer-array, m: integer) → integer
packetsinteger-array
her paketteki çikolata sayısı
minteger
her biri bir paket alan öğrenci sayısı
Döndürürinteger
dağıtılan en büyük ve en küçük paket arasındaki mümkün olan en küçük fark

Kısıtlar

  • 2 ≤ m ≤ packets.length ≤ 104
  • 1 ≤ packets[i] ≤ 105
  • İki pakette aynı sayıda çikolata olabilir.

Örnekler

Girdi
packets = [9, 3, 15, 7, 11, 4]m = 3
Çıktı
4
Açıklama
Sıralandığında paketler 3, 4, 7, 9, 11 ve 15'tir. Hem 3, 4, 7 hem de 7, 9, 11 4 farkını verir ve hiçbir üç paket birbirine daha yakın değildir.
Kodu sıfırla
def minDifference(packets, m):
    # Kodu buraya yazın

Test #1

Test #2

Test #3

Argümanlar

packets = [9, 3, 15, 7, 11, 4]
m = 3

Beklenen Çıktı

4