¡Gracias por el A2A, es un ejercicio interesante!
Así que es lunes tenemos una larga caja de artículos (sus precios): [matemáticas] [3, 7, 2, 5] [/ matemáticas]. ¿Es mejor vender [matemáticas] [3] [/ matemáticas] al precio de [matemáticas] * 1 [/ matemáticas] hoy y quedarse con [matemáticas] [7, 2, 5] [/ matemáticas] el martes, o vender [matemáticas] [5] [/ matemáticas] hoy y se quedará con [matemáticas] [3, 7, 2] [/ matemáticas] mañana? Por supuesto, para emitir un juicio, debe analizar lo que va a hacer hoy y resumirlo con lo que va a hacer en el futuro. Sin embargo, lo que va a hacer en el futuro depende de lo que va a hacer en un futuro aún más , y pronto descubrirá que hay muchos futuros para analizar.
Pero algo más está sucediendo: a medida que analiza varios cursos de acción, descubre que algunos escenarios, aunque diferentes al principio, se vuelven más similares más adelante. Por ejemplo, independientemente de si ha vendido [matemáticas] [3] [/ matemáticas] el lunes y [matemáticas] [5] [/ matemáticas] el martes o [matemáticas] [5] [/ matemáticas] el lunes y [matemáticas ] [3] [/ math] el martes, el miércoles te enfrentas a la misma opción: entre [math] [7] [/ math] y [math] [2] [/ math], entonces ¿por qué no analizar eso? Primero, escriba qué curso de acción es mejor y luego recuérdelo en el futuro en lugar de tomar la misma decisión de nuevo.
- ¿Cuál es la mejor fuente disponible para aprender estructuras de datos y algoritmos para un principiante?
- ¿Hay alguna aplicación práctica de algoritmos que calculen los equilibrios de Nash?
- ¿Dónde puedo encontrar el código fuente de los algoritmos de Data Science?
- ¿Es [math] | \ mathbb {Q} | = | \ mathbb {N} | [/ math]?
- ¿Encontrar la complejidad temporal de los algoritmos está relacionado con las matemáticas discretas?
Eso es lo que es la programación dinámica: dividir su problema en subproblemas que sabe que tiene que resolver en numerosas ocasiones, recordando sus resultados y resolviéndolos solo una vez, ahorrándose así mucho tiempo.
En este caso, recomendaría crear una matriz 2D donde el índice horizontal es el índice del elemento con el que comienza una caja larga y el índice vertical es el número de elementos en la caja larga, y luego, comenzando en las cajas largas más cortas, complete los campos del conjunto con la mayor cantidad de dinero que puede ganar con cada uno de ellos. ¡Recuerde tener en cuenta el valor creciente de las golosinas! Es calculable en función del número de días y, por lo tanto, es una función de la longitud de la caja larga.