Un numero primo, es un numero entero mayor o igual a 2, el cual no tiene mas divisores mas que 1 y el mismo. Por ejemplo 5 es numero primo porque 2, 3 ni 4 dividen exactamente ese numero. En cambio 9 es un numero compuesto porque existen números entre 2 y 9 que los dividen perfectamente como 3.
Los primeros números primos son 2, 3, 5, 7, 11, ...
Tu misión si decides aceptarla es dado un numero entre 1 y 1000 que sera la posición del numero primo en la lista de números primos. Por ejemplo, si doy 1 el resultado debe ser 2, ya que 2 es el primer numero primo. Si doy 5 el resultado debe de ser 11.
Entrada:
Cada linea tendrá un numero entero valido en el rango de 1 a 1000 inclusive (1 <= N <= 1000), la linea no entra espacios antes ni después.
Salida:
Por cada numero de entrada, la salida debe debe se ser una sola linea sin espacio, indicando el numero primo que corresponda.
Ejemplo de Entrada:
Código:
1 2 3 4 5
Ejemplo de Salida:
Código:
Puntaje:2 3 5 7 11
Cada respuesta sera evaluada con respecto a 2 puntos:
1. Numero de lineas
2. Tiempo de ejecución
Notas:
1. No deben de usar librerías de terceros.
2. La versión en el que sera ejecutados las pruebas sera 2.7 o 3.3
3. La solución debe de estar en un solo archivo .py
4. Para evaluar el script se utilizara el siguiente comando: time cat entrada.txt | python script.py > salida_text.txt
Score:
Carbon
Status: Incorrecto
Lineas: 24
Tiempo: 0.915s
sukoy
Status: Correcto
Lineas: 16
Tiempo: 0.375s
Script para evaluación de tiempo y exactitud del programa: entrada.txt y salida.txt son los archivos con las respuestas.
Código BASH:
Ver original
#!/usr/bin/env bash timeout 10 bash -c "time cat entrada.txt | python script.py > salida_test.txt" if [ "$?" == "124" ] then echo "Timeout"; exit 0; fi diff salida.txt salida_test.txt &> /dev/null if [ "$?" == "0" ] then echo "Correcto"; else echo "Incorrecto"; fi
Plantilla para resolver el problema:
Código Python:
Ver original
def answer(number): "Implementa tu respuesta aqui" return 0 while True: try: number = int(raw_input()) print answer(number) except EOFError: break