Programa de Python para probar si todos los elementos en la lista tienen un máximo de K de diferencia

Dada una lista de números, la tarea es escribir un programa Python para probar si todos los elementos están separados por un máximo de K.

Ejemplos:

Entrada: lista_prueba = [475, 503, 425, 520, 470, 500], K = 100

Salida: Verdadero 

Explicación: el elemento máximo es 520 y el mínimo es 425, 520-425 = 95, que es menos de 100, por lo que los elementos están dentro del rango.

Entrada: lista_prueba = [475, 503, 425, 540, 470, 500], K = 100

Salida: Falso 

Explicación: el elemento máximo es 540 y el mínimo es 425, 520-425 = 115, que es más de 100, por lo que los elementos no están dentro del rango.

Método #1: Usar sort()

En esto, realizamos la tarea de clasificar los elementos para obtener acceso a los elementos mínimo y máximo mediante sort(). El siguiente paso es obtener la diferencia entre ellos, si es menor que el rango, se devuelve True.

Python3

# Python3 code to demonstrate working of
# Test if all elements are in range size
# Using sort()
  
# initializing list
test_list = [475, 503, 425, 520, 470, 500]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 100
  
# sorting list
test_list.sort()
  
# checking if greater than range
res = test_list[-1] - test_list[0] < K
  
# printing result
print("Are elements in range ? : " + str(res))

Producción:

The original list is : [475, 503, 425, 520, 470, 500]
Are elements in range ? : True

Método #2: Usar min() + max()

En lugar de cambiar el orden o la lista original, min() y max() se usan para obtener los elementos mínimo y máximo respectivamente, y la diferencia entre ellos obtiene el resultado requerido.

Python3

# Python3 code to demonstrate working of
# Test if all elements are in range size
# Using min() + max()
  
# initializing list
test_list = [475, 503, 425, 520, 470, 500]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = 100
  
# using min() and max() rather than
# changing order
res = max(test_list) - min(test_list) < K
  
# printing result
print("Are elements in range ? : " + str(res))

Producción:

The original list is : [475, 503, 425, 520, 470, 500]
Are elements in range ? : True

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *