Este es un programa en Python que resuelve el problema de encontrar el máximo Index Product para una lista dada.
Dado un conjunto de números representados como una lista, para cada elemento arr[i]
, se definen dos valores Left(i)
y Right(i)
de la siguiente manera:
-
Left(i)
es el índice más cercanoj
tal quej < i
yarr[j] > arr[i]
. Si no existe unj
que cumpla esta condición, entoncesLeft(i)
es igual a 0. -
Right(i)
es el índice más cercanok
tal quek > i
yarr[k] > arr[i]
. Si no existe unk
que cumpla esta condición, entoncesRight(i)
es igual a 0.
El programa calcula el producto de Left(i)
y Right(i)
para cada elemento arr[i]
y luego encuentra el máximo de estos productos, conocido como Index Product
.
El programa está implementado en Python y se proporciona en el archivo max_index_product.py
. Para usarlo, simplemente reemplaza la lista arr
con tu propia lista de números. A continuación, ejecuta el programa y mostrará el resultado del máximo Index Product.
arr = [4, 7, 2, 8, 5, 1, 6]
def solve(arr):
# ... (resto del código)
# ...
maximumIndexProduct = max(indexProduct)
return maximumIndexProduct
print(solve(arr))
Supongamos que usamos la lista arr = [4, 7, 2, 8, 5, 1, 6]
, luego de ejecutar el programa, obtendríamos el siguiente resultado:
Left: [0, 1, 1, 3, 2, 0, 4]
Right: [2, 0, 4, 0, 4, 6, 0]
Index-Product: [0, 0, 4, 0, 8, 0, 0]
Maximum Index Podroduct = 8
Siéntete libre de realizar contribuciones o mejoras a este programa. ¡Disfruta resolviendo problemas y aprendiendo juntos!
Este programa se distribuye bajo la Licencia MIT. Consulta el archivo LICENSE para obtener más detalles.