La fuerza gravitacional es una fuerza que atrae dos objetos con masa. En este desafío, nuestros objetos serán Números y su masa será su valor. Para hacerlo, no nos importa la fuerza de la fuerza sino la dirección de la misma.
Imagina este conjunto de números
[1 6 9 4 6 9 7 6 4 4 9 8 7]
Cada uno de ellos crea una fuerza entre sí y sus números adyacentes. En algunas condiciones, esto provocará que otro número sea atraído (movido) hacia un número. Cuando el número es mayor que el adyacente, lo atrae. Echemos un vistazo a nuestro ejemplo anterior:
[1 → 6 → 9 ← 4 6 → 9 ← 7 ← 6 ← 4 4 → 9 ← 8 ← 7]
El número 1no es lo suficientemente grande como para moverse 6, pero el número 6es, etc. Básicamente, los números se mueven al número adyacente más grande (también más grande que el número mismo). Si los dos números adyacentes son iguales, entonces no se atrae. También ocurre cuando el número y el adyacente son iguales.
Esto es solo para mostrar la atracción, pero ¿qué sucede después? Los números que chocan debido a la atracción se resumen:
[20 32 28]
Básicamente, el desafío es, dado un conjunto de números, generar el resultado del conjunto atraído de números.
Ejemplo 1
Input => [10 15 20 10 20 10 10]
[10 → 15 → 20 10 20 ← 10 10]
Output => [45 10 30 10]
Ejemplo 2
Input => [9 9 9 9 8 1 8]
[9 9 9 9 ← 8 1 8]
Output => [9 9 9 17 1 8]
Ejemplo 3
Input => [1 6 9 4 6 9 7 6 4 4 9 8 7]
[1 → 6 → 9 ← 4 6 → 9 ← 7 ← 6 ← 4 4 → 9 ← 8 ← 7]
Output => [20 32 28]
Ejemplo 4
Input => [1 2 3 2 1]
[1 → 2 → 3 ← 2 ← 1]
Output => [9]
Ejemplo 5
Input => [1]
Output => [1]
Ejemplo 6
Input => [1 1]
Output => [1 1]
Ejemplo 7
Input => [2 1 4]
Output => [2 5]
Notas
- La atracción solo ocurre una vez
- Los números no son atraídos por números no adyacentes
- El conjunto de números solo contendrá enteros positivos
[1 3 5 4 2]= 15?
G*M*m / r^2, es igual para ambos cuerpos. El más ligero se mueve más que el más pesado por el impulso, no por falta de atracción. Tal vez diga "1 no es lo suficientemente grande como para mover 6".