Distribución de oro
Un grupo de piratas tiene una distribución de monedas de oro, que puede representarse como un arreglo:
[3, 9, 4, 5, 5]
// El pirata 1 tiene 3 de oro, el pirata 2 tiene 9 de oro, etc.La diferencia entre la cantidad de oro de cada pirata y la del pirata más rico se representa como:
[6, 0, 5, 4, 4]
// Ya que 6 = 9 - 3, 0 = 9 - 9, 4 = 9 - 5, etc.Los piratas tienen un gran sentido de la justicia, y un pirata matará a los demás si considera que su parte es demasiado pequeña. Cada pirata tiene un umbral de desigualdad único: la diferencia máxima que está dispuesto a tolerar antes de matar a sus compañeros.
Usando la distribución de oro anterior:
[5, 0, 5, 5, 5]
// Los piratas mueren, ya que 5 < 6.
// 5 es la distribución de desigualdad del pirata 1 y 6 es su diferencia de oro.
[7, 0, 5, 5, 5]
// El pirata 1 está satisfecho, ya que 7 > 6.
// Todos los demás piratas también están satisfechos.Dada una distribución de monedas y un arreglo de umbrales de desigualdad, crea una función que devuelva true si algún pirata muere, o false en caso contrario.
Ejemplos
piratesKilled([3, 5, 8, 3, 4], [10, 4, 2, 5, 5]) ➞ false
piratesKilled([3, 5, 8, 3, 4], [10, 4, 2, 5, 1]) ➞ true
piratesKilled([3, 3, 10], [7, 7, 0]) ➞ false
piratesKilled([3, 3, 10], [6, 6, 0]) ➞ trueNotas
- Un pirata mata si la diferencia entre su parte de oro y la del pirata más rico es estrictamente mayor que su umbral de desigualdad.
- Los arreglos de distribución de oro y de desigualdad están ordenados de la misma manera. (e.g. El pirata 1 está en el índice 0 en ambos arreglos; el pirata 2 está en el índice 1 en ambos arreglos, etc.).