2.5 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4021000cf542c50ff13 | 5 | Problem 149: Searching for a maximum-sum subsequence | Задача 149: Поиск подпоследовательности максимальной суммы |
Description
-25329-6513273-18-4 8
Теперь повторим поиск, но в гораздо большем масштабе:
Во-первых, сгенерируйте четыре миллиона псевдослучайных чисел, используя определенную форму так называемого «генератора с отложенным фибоначчи»:
Для 1 ≤ k ≤ 55, sk = [100003 - 200003k + 300007k3] (по модулю 1000000) - 500000. Для 56 ≤ k ≤ 4000000, sk = [sk-24 + sk-55 + 1000000] (по модулю 1000000) - 500000.
Таким образом, s10 = -393027 и s100 = 86613.
Затем термины s располагаются в таблице 2000 × 2000, используя первые 2000 номеров для заполнения первой строки (последовательно), следующих номеров 2000 для заполнения второй строки и т. Д.
Наконец, найдите наибольшую сумму (любое число) смежных записей в любом направлении (горизонтальное, вертикальное, диагональное или антидиагональное).
Instructions
Tests
tests:
- text: <code>euler149()</code> должен вернуть 52852124.
testString: 'assert.strictEqual(euler149(), 52852124, "<code>euler149()</code> should return 52852124.");'
Challenge Seed
function euler149() {
// Good luck!
return true;
}
euler149();
Solution
// solution required