Dados dos números enteros positivos A y B , la tarea es imprimir los dígitos distintos en orden descendente, que no son comunes en los dos números.
Ejemplos:
Entrada: A = 378212, B = 78124590
Salida: 9 5 4 3 0
Explicación: Todos los dígitos distintos presentes en los dos números son {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Los dígitos {1, 2, 6, 7} son comunes en ambos números.Entrada: A = 100, B = 273
Salida: 7 3 2 1 0
Explicación: Todos los dígitos distintos presentes en los dos números son {0, 1, 2, 3, 7}. Los dígitos {0, 1, 2, 3, 7} son comunes en ambos números.
Enfoque: el problema se puede resolver usando conjuntos y listas en python. Siga los pasos a continuación para resolver el problema:
- Convierta ambos enteros en strings .
- Ahora, almacene los valores enteros equivalentes de los caracteres de las strings A y B en las listas lis1 y lis2 , usando la función map() .
- Convierta las listas lis1 y lis2 para establecer lis1 y lis2 usando el método set() .
- Ahora, encuentra los dígitos poco comunes de ambos conjuntos lis1 y lis2 usando la función symmetric_difference() y guárdalos en un conjunto, digamos lis .
- Después de completar los pasos anteriores, convierta el set lis en list lis usando el método list() .
- Finalmente, ordene la lista en orden descendente e imprima la lista como respuesta.
Python3
# Python implementation # of the above approach # Function to print uncommon digits # of two numbers in descending order def disticntUncommonDigits(A, B): # Stores digits of A as string A = str(A) # Stores digits of B as string B = str(B) # Stores the characters # of A in a integer list lis1 = list(map(int, A)) # Stores the characters # of B in a integer list lis2 = list(map(int, B)) # Converts lis1 to set lis1 = set(lis1) # Converts lis2 to set lis2 = set(lis2) # Stores the uncommon digits present # in the sets lis1 and lis2 lis = lis1.symmetric_difference(lis2) # Converts lis to list lis = list(lis) # Sort the list in descending order lis.sort(reverse = True) # Print the list lis for i in lis: print(i, end =" ") # Driver Code # Input A = 378212 B = 78124590 disticntUncommonDigits(A, B)
9 5 4 3 0
Complejidad de tiempo: O(log 10 (A) + log 10 (B))
Espacio auxiliar: O(log 10 (A) + log 10 (B))
Publicación traducida automáticamente
Artículo escrito por vikkycirus y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA