1.9 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4811000cf542c50ff94 | 5 | Problem 277: A Modified Collatz sequence | Problema 277: Una secuencia de Collatz modificada |
Description
an + 1 = an / 3 si an es divisible por 3. Denotaremos esto como un gran paso hacia abajo, "D".
an + 1 = (4an + 2) / 3 si dividido por 3 da un resto de 1. Denotaremos esto como un paso hacia arriba, "U".
an + 1 = (2an - 1) / 3 si dividido por 3 da un resto de 2. Denotaremos esto como un pequeño paso hacia abajo, "d".
La secuencia termina cuando algunos an = 1.
Dado cualquier entero, podemos enumerar la secuencia de pasos. Por ejemplo, si a1 = 231, entonces la secuencia {an} = {231,77,51,17,11,7,10,14,9,3,1} corresponde a los pasos "DdDddUUdDD".
Por supuesto, hay otras secuencias que comienzan con esa misma secuencia "DdDddUUdDD ....". Por ejemplo, si a1 = 1004064, entonces la secuencia es DdDddUUdDDDdUDUUUdDdUUDDDUdDD. De hecho, 1004064 es el a1> 106 más pequeño posible que comienza con la secuencia DdDddUUdDD.
¿Cuál es el a1> 1015 más pequeño que comienza con la secuencia "UDDDUdddDDUDDddDdDddDDUDDdUUDd"?
Instructions
Tests
tests:
- text: <code>euler277()</code> debe devolver 1125977393124310.
testString: 'assert.strictEqual(euler277(), 1125977393124310, "<code>euler277()</code> should return 1125977393124310.");'
Challenge Seed
function euler277() {
// Good luck!
return true;
}
euler277();
Solution
// solution required