Dada una lista, su tarea es determinar que la lista es K por ciento igual, es decir, tiene elementos que se completan más de K % veces.
A continuación se presentan algunos métodos para resolver la tarea.
Método #1 Usando colecciones.Contador
# Python3 code to demonstrate # to check whether the list # K percent same or not from collections import Counter # initializing list ini_list1 = [1, 2, 3, 1, 1, 1, 1, 1, 3, 2] # printing initial list print ("Initial list", ini_list1) # initializing K K = 60 # code to check whether list is K % same or not i, freq = Counter(ini_list1).most_common(1)[0] if len(ini_list1)*(K / 100) <= freq: print("True") else: print("False")
Producción:
Initial list [1, 2, 3, 1, 1, 1, 1, 1, 3, 2] True
Método #2: Usando el diccionario y sus valores
# Python3 code to demonstrate # to check whether the list # K percent same or not from collections import Counter, defaultdict # initializing list ini_list1 = [1, 2, 3, 1, 1, 1, 1, 1, 3, 2] # printing initial list print ("Initial list", ini_list1) # initializing K K = 60 # code to check whether list is K % same or not freq = defaultdict(int) for x in ini_list1: freq[x] += 1 freq = freq.values() if max(freq) >= (K / 100) * sum(freq): print ("True") else: print ("False")
Producción:
initial list [1, 2, 3, 1, 1, 1, 1, 1, 1, 1] 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