Programa Python para imprimir todos los dígitos poco comunes distintos presentes en dos números dados

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:

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)
Producción:

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

Deja una respuesta

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