3.0 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4031000cf542c50ff15 | 5 | Problem 150: Searching a triangular array for a sub-triangle having minimum-sum | Задача 150: Поиск треугольного массива для под треугольника с минимальной суммой |
Description
Мы хотим сделать такой треугольный массив с одной тысячей строк, поэтому мы генерируем псевдослучайные числа 500500 sk в диапазоне ± 219, используя тип генератора случайных чисел (известный как линейный конгруэнтный генератор) следующим образом: t: = 0
для k = 1 до k = 500500:
t: = (615949 * t + 797807) modulo 220 sk: = t-219 Таким образом: s1 = 273519, s2 = -153582, s3 = 450905 и т. д. Наш треугольный массив затем формируется с использованием псевдослучайных чисел, таким образом:
s1 s2 s3 s4 s5 s6
s7 s8 s9 s10 ...
Субтреугольники могут начинаться с любого элемента массива и расширяться до тех пор, пока нам нравится (приведение двух элементов непосредственно под ним из следующей строки, три элемента непосредственно ниже из строки после этого и т. Д.).
«Сумма под треугольника» определяется как сумма всех содержащихся в ней элементов.
Найдите наименьшую возможную сумму под треугольника.
Instructions
Tests
tests:
- text: <code>euler150()</code> должен возвращать -271248680.
testString: 'assert.strictEqual(euler150(), -271248680, "<code>euler150()</code> should return -271248680.");'
Challenge Seed
function euler150() {
// Good luck!
return true;
}
euler150();
Solution
// solution required