Menu
CoddyTech

Chocolate Distribution Problem

Tu as plusieurs paquets de chocolat, et packets[i] correspond au nombre de chocolats dans le paquet i. Chacun des m élèves reçoit exactement un paquet, donc m paquets différents sont distribués. Choisis-les de sorte que la différence entre le paquet le plus grand et le plus petit distribués soit aussi petite que possible.

Écris une fonction nommée minDifference qui renvoie cette différence minimale possible.

Fonction

minDifference(packets: integer-array, m: integer) → integer
packetsinteger-array
le nombre de chocolats dans chaque paquet
minteger
le nombre d’élèves, chacun recevant un paquet
Renvoieinteger
la plus petite différence possible entre le plus grand et le plus petit paquet distribué

Contraintes

  • 2 ≤ m ≤ packets.length ≤ 104
  • 1 ≤ packets[i] ≤ 105
  • Deux paquets peuvent contenir le même nombre de chocolats.

Exemples

Entrée
packets = [9, 3, 15, 7, 11, 4]m = 3
Sortie
4
Explication
Une fois triés, les paquets sont 3, 4, 7, 9, 11 et 15. Les groupes 3, 4, 7 et 7, 9, 11 ont tous deux une différence de 4, et aucun groupe de trois paquets n’est plus rapproché.
Réinitialiser le code
def minDifference(packets, m):
    # Écrivez le code ici

Test #1

Test #2

Test #3

Arguments

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

Résultat attendu

4