Yo tampoco entendí bien lo de entrada y salida. Me falta conocimiento para eso. Pero acá esta mi código:
Código:
1. def crear_lista_primos(numero):
2. lista_primos, x = [], 1
3. while len(lista_primos)<numero:
4. x, es_primo = x+1, True
5. for y in range(2,x-1): #(numeros entre 2 y x)
6. if x%y == 0:
7. es_primo = False
8. if es_primo == True:
9. lista_primos.append(x)
10. return lista_primos
11. def popular_output(lista_input):
12. primos = crear_lista_primos(max(lista_input))
13. lista_output = []
14. for k in lista_input:
15. lista_output.append(primos[k-1])
16. return lista_output
17.lista_de_numeros = [] #AQUI VAN LOS NUMEROS
18.print popular_output(lista_de_numeros) #Devuelve la lista de numeros primos correspondiente
se entiende que la lista puede ser desordenada, [1,2,3,4,5] o [1,3,2,5,4].
Buen ejercicio.
#no se como añadir lineas al codigo XD