Menu
CoddyTech

Chocolate Distribution Problem

Você tem alguns pacotes de chocolate, e packets[i] é o número de chocolates no pacote i. Cada um dos m estudantes recebe exatamente um pacote, então m pacotes diferentes são distribuídos. Escolha-os de modo que a diferença entre o maior e o menor pacote distribuído seja a menor possível.

Escreva uma função chamada minDifference que retorne essa menor diferença possível.

Função

minDifference(packets: integer-array, m: integer) → integer
packetsinteger-array
o número de chocolates em cada pacote
minteger
o número de alunos, cada um recebendo um pacote
Retornainteger
a menor diferença possível entre o maior e o menor pacote distribuído

Restrições

  • 2 ≤ m ≤ packets.length ≤ 104
  • 1 ≤ packets[i] ≤ 105
  • Dois pacotes podem conter a mesma quantidade de chocolates.

Exemplos

Entrada
packets = [9, 3, 15, 7, 11, 4]m = 3
Saída
4
Explicação
Em ordem crescente, os pacotes são 3, 4, 7, 9, 11 e 15. Tanto 3, 4, 7 quanto 7, 9, 11 apresentam uma diferença de 4, e nenhum grupo de três pacotes está mais próximo.
Redefinir código
def minDifference(packets, m):
    # Escreva o código aqui

Teste #1

Teste #2

Teste #3

Argumentos

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

Saída Esperada

4