Un restaurante vende hamburguesas en pedidos de 6, 9 y 20. ¿Cuál es la cantidad más grande de hamburguesas que no se puede pedir en este restaurante?

La respuesta es 43.

(En esta solución hablaré de números que son X mod 3, lo que significa que dejan un resto de X cuando se divide por 3)

Solución:

1) Puede hacer cualquier número al menos 6 que sea 0 mod 3. Esto se puede hacer simplemente usando una combinación de 6s y 9s.

2) Puedes hacer cualquier número al menos 26 que sea 2 mod 3 . Esto se logra simplemente agregando un 20 a un número de 1)

3) Puedes hacer cualquier número al menos 46 que sea 1 mod 3. Esto se logra sumando un 40 a un número de 1)

De las combinaciones de 1), 2) y 3), sabemos que ya podemos hacer cualquier número al menos 46 con una combinación de los números 6, 9 y 20. Vamos a ver casos por debajo de 46 para encontrar el primer número que tenemos no puede lograr.

45: 9, 9, 9, 9, 9
44: 20, 6, 6, 6, 6
43: ??? (Puede verificar que esto sea imposible confirmando que no puede hacer 3, 23 o 43 con una combinación de 6 y 9)

Es imposible hacer 43 con solo los números 6, 9 y 20, así que vemos que esa es nuestra respuesta.

En primer lugar, el GCD de [math] 6, \, 9, \, 20 [/ math] es [math] 1 [/ math], por lo que si se permite el orden negativo, no habrá límite en el orden de los números de la hamburguesa. Pero si solo se permite el orden no negativo, ¿qué pasaría?

Comencemos con otro ejemplo más simple, si solo se permiten pedidos de 2 y 3,
1. para [math] 2n [/ math], todo [math] n [/ math] es posible.
2. para [matemáticas] 2n + 1 = 2 (n-1) + 2 + 1 = 2 (n-1) +3 [/ matemáticas], [matemáticas] n \ ge 1 [/ math].
Entonces, el único orden imposible es 1 hamburguesa.

Ahora volvamos a nuestro problema,
1. para [math] 6n [/ math], todo [math] n [/ math] es posible.
2. para [matemáticas] 6n + 1 = 6 (n-8) + 48 + 1 = 6 (n-8) + 9 + 20 \ cdot 2 [/ math], [math] n \ ge 8 [/ math] .
3. para [matemáticas] 6n + 2 = 6 (n-3) + 18 + 2 = 6 (n-3) +20 [/ math], [math] n \ ge 3 [/ math].
4. para [matemáticas] 6n + 3 = 6 (n-1) + 6 + 3 = 6 (n-1) +9 [/ matemáticas], [matemáticas] n \ ge 1 [/ math].
5. para [matemáticas] 6n + 4 = 6 (n-6) + 36 + 4 = 6 (n-6) +20 \ cdot 2 [/ math], [math] n \ ge 6 [/ math].
6. para [matemáticas] 6n + 5 = 6 (n-4) + 24 + 5 = 6 (n-4) + 9 + 20 [/ math], [math] n \ ge 4 [/ math].
Por lo tanto, la mayor cantidad de hamburguesas que no se pueden ordenar ocurre en [matemáticas] 6n + 1 [/ matemáticas] cuando [matemáticas] n = 7 [/ matemáticas], es decir [matemáticas] 43 [/ matemáticas].

Es 43.

Como puedes comprar 6 y 9, puedes comprar cualquier número divisible por 3, excepto por 3.

Miremos los números mayores a 40. Si un número es mayor a 40 no es divisible por 3, puede obtener un número divisible entre 3 restando 20 o 40.

Para 43, puede restar 40 para obtener el número 3. Pero no puede comprar paquetes si 3, solo puede obtener múltiplos mayores de 3.

Para todos los números mayores que 43, el número será divisible por 3 y mayor que tres, o puede restar 20 o 40 y obtener un número divisible por 3 y mayor que 3.

De modo que puede crear cualquier número mayor que 43 con 0, 1 o 2 paquetes de 20, 0 o 1 paquete de 9, y n número de paquetes de 6, donde n puede ser cualquier número entero.

Quora User proporciona una buena respuesta para esta pregunta en particular. Aquí hay otro que le permite encontrar el número 43 y también resolver el mismo problema para conjuntos de números distintos de {6, 9, 20}. Sin embargo, requiere la ayuda de una computadora.

Tenga en cuenta que una vez que puede ordenar m hamburguesas para cualquier m en el conjunto {n, n + 1, n + 2, … n + 5}, puede ordenar m hamburguesas para cualquier m> = n. Por lo tanto, la pregunta se reduce a encontrar la n más grande, de modo que no se puedan ordenar n hamburguesas, pero puedes pedir {n + 1, n + 2, …, yn + 6 hamburguesas.

Por lo tanto, encuentra el número en el siguiente pequeño programa:

  def max_unbuyable_burgers ():
     cheques = [Verdadero] + [Falso] * 5
     i = 6
     mientras que es cierto:
         checks.append (
             (i> = 6 y comprueba [i - 6])
             o (i> = 9 y comprueba [i - 9])
             o (i> = 20 y comprueba [i - 20])
         )
         si todo ([comprueba [i - j] para j en el rango (6)]):
             devolver i - 6
         i + = 1

 imprimir max_unbuyable_burgers ()

Ejecutando este programa rinde 43.

Si mal no recuerdo, sería 43.

43 también se llama el “número más grande que no es McNugget” porque antes, McDonalds solo vendía McNuggets en cajas de 6, 9 y 20, y 43 era la cantidad más grande de McNuggets que nadie podía obtener … eso es hasta que agregaron un 4 -pieza.

43. Como se explica por Numberphile:

Al iterar sobre todas las combinaciones posibles (usando una computadora), se me ocurrió la misma respuesta: 43.