Corrigindo Argumentos Padrão Mutáveis

Em Python, utilizar objetos mutáveis como listas como argumentos padrão em funções pode levar a comportamentos inesperados. Isso ocorre porque o valor padrão de um argumento de função é avaliado apenas uma vez, no momento em que a função é definida. Consequentemente, o argumento padrão mutável é partilhado entre todas as invocações da função.
Para superar este problema, a função deve ser modificada para usar None como valor padrão para o argumento da lista e, em seguida, inicializar uma lista vazia dentro da função quando esse argumento for None.
É-te solicitado que alteres a função mutable_default_argument definida no exercício anterior. Esta função terá dois parâmetros: um inteiro n e uma lista lst que, por padrão, é None.
A função deve verificar se lst é None e, caso seja, inicializá-la como uma lista vazia. Depois, deve adicionar o inteiro n a lst e retornar lst.
A primeira linha da entrada contém um único inteiro m, o número de vezes que a função será chamada. Cada uma das próximas m linhas contém um único inteiro n, o número que será adicionado à lista.
A saída deve conter m linhas. Cada linha deve ser uma lista, representando o estado de lst após cada chamada da função.
Entrada
Saída
3 1 2 3
[1] [2] [3]
Nota: Observa que, ao contrário do exercício anterior, a lista lst não é partilhada entre as invocações da função. Cada chamada da função produz uma lista com um único elemento, correspondente ao número adicionado nessa chamada específica. Este é o comportamento esperado e é alcançado evitando o uso de argumentos padrão mutáveis.
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue