2.3 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4d31000cf542c50ffe6 | 5 | Problem 359: Hilbert"s New Hotel | Problema 359: el nuevo hotel de Hilbert |
Description
Inicialmente el hotel está vacío. Hilbert declara una regla sobre cómo se le asigna una habitación a la nª persona: la persona n obtiene la primera habitación desocupada en el piso con el número más bajo que cumpla con cualquiera de los siguientes requisitos: el piso está vacío, el piso no está vacío, y si la última persona toma una habitación en ese piso está la persona m, entonces m + n es un cuadrado perfecto
La persona 1 obtiene la habitación 1 en el piso 1 ya que el piso 1 está vacío. La persona 2 no recibe la habitación 2 en el piso 1 ya que 1 + 2 = 3 no es un cuadrado perfecto. En cambio, la persona 2 obtiene la habitación 1 en el piso 2 ya que el piso 2 está vacío. La persona 3 obtiene la habitación 2 en el piso 1, ya que 1 + 3 = 4 es un cuadrado perfecto.
Eventualmente, cada persona en la fila recibe una habitación en el hotel.
Defina P (f, r) como n si la persona n ocupa la sala r en el piso f, y 0 si ninguna persona ocupa la sala. Aquí hay algunos ejemplos: P (1, 1) = 1 P (1, 2) = 3 P (2, 1) = 2 P (10, 20) = 440 P (25, 75) = 4863 P (99, 100) = 19454
Encuentra la suma de todos los P (f, r) para todos los positivos de f y r, de manera que f × r = 71328803586048 y da los últimos 8 dígitos como tu respuesta.
Instructions
Tests
tests:
- text: <code>euler359()</code> debe devolver 40632119.
testString: 'assert.strictEqual(euler359(), 40632119, "<code>euler359()</code> should return 40632119.");'
Challenge Seed
function euler359() {
// Good luck!
return true;
}
euler359();
Solution
// solution required