Mientras observa el rugby anoche me preguntaba si alguna puntuaciones fueron imposible teniendo en cuenta que sólo se puede ganar puntos en lotes de 3, 5 o 7. No pasó mucho tiempo para saber que cualquier número mayor que 4 es alcanzable. 5 = 5, 6 = 3 + 3, 7 = 7, 8 = 3 + 5, 9 = 3 + 3 + 3, 10 = 5 + 5 y así sucesivamente.suma de los números que hacen una secuencia de
Extendiéndose sobre esa idea de 5, 7 y 9 se obtienen los siguientes resultados posibles:
5,7,9,10,12,14 // and now all numbers are possible.
Para 7, 9 y 11:
7,9,11,14,16,18,20,22,23,25,27 // all possible from here
hice esto en mi cabeza, ¿alguien puede sugieren un buen algoritmo que determinaría el puntaje más bajo posible por encima del cual todos los puntajes son alcanzables dado un conjunto de puntajes.
Modelé así:
forall a < 10:
forall b < 10:
forall c < 10:
list.add(3a + 5b + 7c);
list.sort_smallest_first();
continuación, compruebe la lista de una secuencia más larga de 3 (el más pequeño puntuación posible). Parece bastante poco práctico y lento para cualquier cosa más allá del caso trivial.
1 para ver el rugby, si pudiera yo le daría otro si eres un fan de los cruzados. Buena pregunta, sin embargo, antes de aumentar los puntos para un try, era imposible marcar 19. – slugster
Canterbury hasta el final. – Daniel