Dada una string, la tarea es escribir un programa de Python para contar los elementos mínimos necesarios para formar una string a partir de elementos de la lista.
Entrada : test_list = [“geek”, “ring”, “sfor”, “ok”, “woke”], tar_str = “working” Salida: 2
Explicación :
el trabajo se puede formar usando wake y ring.Entrada : test_list = [“geek”, “ring”, “sfor”, “ok”, “woke”], tar_str = “workinggeek” Salida:
3 Explicación
: workinggeek se puede formar usando wake, geek y ring.
Método: Usar issubset() + set() + combinaciones()
En esto, iteramos para obtener una lista de strings y formamos combinaciones de todos los tamaños, cada combinación se convierte en conjunto y se verifica que forme una string de destino usando issubset(), si se encuentra, se sale del ciclo y se registra el conteo.
Python3
# Python3 code to demonstrate working of # Minimum elements for String construction # Using issubset() + set() + combinations() from itertools import combinations # initializing list test_list = ["geek", "ring", "sfor", "ok", "woke"] # printing original list print("The original list is : " + str(test_list)) # initializing target string tar_str = "working" res = -1 set_str = set(tar_str) done = False for val in range(0, len(test_list) + 1): # creating combinations for sub in combinations(test_list, val): # constructing sets of each combinations temp_set = set(ele for subl in sub for ele in subl) # checking if target string has created set as subset if set_str.issubset(temp_set): res = val done = True break if done: break # printing result print("The Minimum count elements for string : " + str(res))
Producción:
The original list is : ['geek', 'ring', 'sfor', 'ok', 'woke'] The Minimum count elements for string : 2
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