Suponiendo que la longitud es mayor que la anchura de ambos rectángulos (los más pequeños y los más grandes), se producirán los siguientes casos mientras intentas empacar rectángulos más pequeños en el más grande. Deje que la longitud del rectángulo más grande sea L, su ancho sea B y la longitud y el ancho de los rectángulos más pequeños sea l y b respectivamente.
Caso 1. Empaque los rectángulos más pequeños de manera que su longitud sea paralela a la anchura del rectángulo más grande hasta que se quede sin espacio.
Luego intente al revés (Longitud del rectángulo más grande paralelo a Longitudes del más pequeño) en el espacio disponible.
Caso 2: Empaquete los rectángulos más pequeños de manera que su longitud sea paralela a la longitud del rectángulo más grande hasta que se quede sin espacio. Luego intente al revés (Longitud del rectángulo más grande paralelo a anchos del más pequeño) en el espacio disponible. Tome el máximo del caso 1 y el caso 2 para obtener el máximo no de rectángulos más pequeños que se pueden empaquetar en uno más grande.
Encuentre el código python 3 de la implementación y avíseme si tiene algún problema.
haris989 / Similar-rectangles-on-a-large-rectangle — 2D-binpacking-solver
¡Aclamaciones!
- ¿Cuánto tiempo / horas debo pasar todos los días para ser un buen programador de Java para poder resolver estructuras de datos y algoritmos con ese lenguaje en el futuro?
- ¿Cuál es el problema conmigo si puedo decir cómo funciona el algoritmo pero no puedo escribir el programa para el mismo? ¿Cómo puedo deshacerme de él? ¿Por favor ayuda?
- ¿Cuál es el problema matemático más difícil que existe?
- ¿Cuál es el código más elegante que puede escribir en su lenguaje de programación favorito que imprima los números del 100 al 200?
- ¿Por qué debería aprender algoritmos antes de entrar en la programación?