Cree una función que genere un conjunto de números aleatorios distintos extraídos de un rango. El orden de los elementos en el conjunto no es importante (incluso se pueden ordenar), pero debe ser posible que el contenido del conjunto sea diferente cada vez que se llama a la función.
La función recibirá 3 parámetros en el orden que desee:
- Recuento de números en el conjunto de salida
- Límite inferior (incluido)
- Límite superior (incluido)
Suponga que todos los números son enteros en el rango de 0 (inclusive) a 2 31 (exclusivo). La salida se puede devolver de la forma que desee (escriba en la consola, como una matriz, etc.)
Juzgar
Los criterios incluyen las 3 R's
- Tiempo de ejecución : probado en una máquina Windows 7 de cuatro núcleos con cualquier compilador que esté disponible de forma libre o fácil (proporcione un enlace si es necesario)
- Robustez : la función maneja casos de esquina o caerá en un bucle infinito o producirá resultados no válidos: una excepción o error en una entrada no válida es válida
- Aleatoriedad : debe producir resultados aleatorios que no son fácilmente predecibles con una distribución aleatoria. Usar el generador de números aleatorios incorporado está bien. Pero no debe haber sesgos obvios o patrones predecibles obvios. Necesita ser mejor que ese generador de números aleatorios utilizado por el Departamento de Contabilidad en Dilbert
Si es robusto y aleatorio, todo se reduce al tiempo de ejecución. No ser robusto o aleatorio perjudica enormemente su clasificación.