Estoy tratando de identificar el algoritmo del caso general para contar las diferentes formas en que los dados pueden sumar un número dado. Por ejemplo, hay seis maneras de sacar un siete con dos dados de 6.
He pasado bastante tiempo trabajando en esto (durante un tiempo mi amigo y yo estábamos usando los números de Figurate, ya que los primeros artículos de la serie coinciden) pero en este punto estoy cansado y perplejo, y me encantaría alguna ayuda.
Hasta ahora hemos conseguido algo así (disculpas por el débil intento de notación matemática - suelo residir en StackOverflow):
count(x):
x = min(x,n*m-x+n)
if x = n
1
else
some sort of (recursive?) operation
La primera línea simplifica el problema a sólo los números más bajos - donde la cuenta es creciente. Entonces, si buscamos el recuento del mínimo posible (que ahora también es el máximo debido a la línea anterior) sólo hay una forma de hacerlo, por lo que es 1, sin importar n o m.