freeCodeCamp/curriculum/challenges/spanish/08-coding-interview-prep/project-euler/problem-150-searching-a-tri...

2.1 KiB
Raw Blame History

id challengeType title videoUrl localeTitle
5900f4031000cf542c50ff15 5 Problem 150: Searching a triangular array for a sub-triangle having minimum-sum Problema 150: buscar en una matriz triangular un sub-triángulo que tenga una suma mínima

Description

En una matriz triangular de enteros positivos y negativos, deseamos encontrar un sub-triángulo tal que la suma de los números que contiene sea la más pequeña posible. En el siguiente ejemplo, se puede verificar fácilmente que el triángulo marcado cumple esta condición con una suma de 42.

Deseamos hacer una matriz triangular con mil filas, por lo que generamos 500500 números pseudoaleatorios en el rango ± 219, usando un tipo de generador de números aleatorios (conocido como un generador lineal congruente) de la siguiente manera: t: = 0

para k = 1 hasta k = 500.500:

t: = (615949 * t + 797807) modulo 220 sk: = t 219 Por lo tanto: s1 = 273519, s2 = 153582, s3 = 450905 etc. Nuestra matriz triangular se forma luego usando los números pseudoaleatorios:

s1 s2 s3 s4 s5 s6

s7 s8 s9 s10 ...

Los sub-triángulos pueden comenzar en cualquier elemento de la matriz y extenderse hacia abajo como nos guste (tomando los dos elementos directamente debajo de ella desde la siguiente fila, los tres elementos directamente debajo de la fila después de eso, y así sucesivamente).

La "suma de un sub-triángulo" se define como la suma de todos los elementos que contiene.

Encuentra la suma de sub-triángulos más pequeña posible.

Instructions

Tests

tests:
  - text: <code>euler150()</code> debe devolver -271248680.
    testString: 'assert.strictEqual(euler150(), -271248680, "<code>euler150()</code> should return -271248680.");'

Challenge Seed

function euler150() {
  // Good luck!
  return true;
}

euler150();

Solution

// solution required