Corregir Argumentos Mutables por Defecto

En Python, utilizar objetos mutables como listas como argumentos por defecto en funciones puede llevar a comportamientos inesperados. Esto sucede porque el valor por defecto de un argumento de función se evalúa solo una vez, en el momento en que la función es definida. Como resultado, el argumento mutable por defecto se comparte entre todas las invocaciones de la función.
Para solucionar esto, la función debe modificarse para usar None como valor por defecto para el argumento de la lista y luego inicializar una lista vacía dentro de la función cuando este argumento sea None.
Se requiere que modifiques la función mutable_default_argument definida en el ejercicio anterior. Esta función tomará dos parámetros: un entero n y una lista lst que por defecto es None.
La función debe verificar si lst es None y, si es así, inicializarla como una lista vacía. Luego, debe agregar el entero n a lst y devolver lst.
La primera línea de la entrada contiene un solo entero m, el número de veces que se llamará a la función. Cada una de las siguientes m líneas contiene un solo entero n, el número que se agregará a la lista.
La salida debe contener m líneas. Cada línea debe ser una lista, representando el estado de lst después de cada llamada a la función.
Entrada
Salida
3 1 2 3
[1] [2] [3]
Nota: Observa cómo, a diferencia del ejercicio anterior, la lista lst no se comparte entre las invocaciones de la función. Cada llamada a la función produce una lista con un solo elemento, correspondiente al número agregado en esa llamada en particular. Este es el comportamiento esperado y se logra al evitar el uso de argumentos mutables por defecto.
 

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