GreatNoise

La plataforma musical GreatNoise.com quiere mejorar el servicio que ofrece a sus suscriptores. Para ello, añadirá diferentes funcionalidades que los usuarios podrán utilizar en sus listas de reproducción.

Una lista de reproducción consiste en una lista de una o más canciones, que son a la vez listas con los siguientes elementos:

Los tres enunciados a continuación están relacionados pero pueden resolverse de manera independiente, sin depender cualquiera de ellos de la solución de los otros.

  1. GreatNoise.com quiere mostrar la duración total de una lista de reproducción. Programa una función @calcula_duracion(lista_reproduccion)@ que a partir de @lista_reproduccion@, una lista como las descritas al inicio, retorne la duración total en minutos y segundos de la lista proporcionada.

  2. GreatNoise.com también quiere que el usuario tenga más información sobre las canciones añadidas en la lista. Programa una función @clasificar_duracion(lista_reproduccion)@ que, a partir de @lista_reproduccion@, una lista como las descritas al inicio, retorne un diccionario que cuente por duración las canciones de la lista según el criterio siguiente:

    1. inferior a 3 minutos

    2. entre 3 y 5 minutos (incluídas)

    3. mayor a 5 minutos

    Usa las letras ’a’, ’b’, y ’c’ como claves del diccionario.

  3. Finalmente, GreatNoise.com quiere calcular estadísticas sobre las listas de reproducción. Programa una función @estadisticas(lista_reproduccion)@ que a partir de @lista_reproduccion@, una lista como las descritas al inicio, retorne un diccionario que asocie los títulos de las canciones de la lista de reproducción con una lista compuesta por el autor y todos los álbumes (se pueden repetir) donde aparece la canción en la lista de reproducción.

Puntuación

Apartado 1: 33 puntos.

Apartado 2: 33 puntos.

Apartado 3: 34 puntos.

Ejemplo de sessión

Información del problema

Autoría: InfBesos

Generación: 2026-01-25T16:27:19.381Z

© Jutge.org, 2006–2026.
https://jutge.org