Cuatro secuencias enteras
En este desafío, probará cuatro propiedades diferentes de un entero positivo, dadas por las siguientes secuencias. Un entero positivo N es
- perfecta ( OEIS A000396 ), si la suma de los divisores propios de N es igual a N . La secuencia comienza con 6, 28, 496, 8128, 33550336, 8589869056, 137438691328, 2305843008139952128 ...
- refactorable ( OEIS A033950 ), si el número de divisores de N es un divisor de N . La secuencia comienza con 1, 2, 8, 9, 12, 18, 24, 36, 40, 56, 60, 72, 80, 84, 88, 96, 104, 108, 128 ...
- práctico ( OEIS A005153 ), si cada número entero 1 ≤ K ≤ N es una suma de algunos divisores distintos de N . La secuencia comienza con 1, 2, 4, 6, 8, 12, 16, 18, 20, 24, 28, 30, 32, 36, 40, 42, 48, 54, 56 ...
- altamente compuesto ( OEIS A002128 ), si cada número 1 ≤ K <N tiene estrictamente menor número de divisores que N . La secuencia comienza con 1, 2, 4, 6, 12, 24, 36, 48, 60, 120, 180, 240, 360, 720, 840, 1260, 1680, 2520, 5040 ...
Cuatro programas
Su tarea es escribir cuatro programas (es decir, programas completos, definiciones de funciones o funciones anónimas que realizan E / S por cualquiera de los métodos estándar ). Cada programa resolverá el problema de membresía de una de estas secuencias. En otras palabras, cada programa tomará un entero positivo N ≥ 1 como entrada, y generará un valor verdadero si N está en la secuencia, y un valor falso si no. Puede suponer que N está dentro de los límites del tipo entero estándar de su lenguaje de programación.
Los programas deben estar relacionados de la siguiente manera. Hay cuatro cuerdas ABCD
tales que
AC
es el programa que reconoce números perfectosAD
es el programa que reconoce números refactibles.BC
es el programa que reconoce números prácticos.BD
es el programa que reconoce números altamente compuestos.
Puntuación
Su puntaje es la longitud total (en bytes) de las cadenas ABCD
, o en otras palabras, el recuento total de bytes de los cuatro programas dividido por dos. El puntaje más bajo en cada lenguaje de programación es el ganador. Aplican reglas estándar de código de golf .
Por ejemplo, si los cuatro cadenas son a{
, b{n
, +n}
y =n}?
, a continuación, los cuatro programas son a{+n}
, a{=n}?
, b{n+n}
y b{n=n}?
, y la puntuación es de 2 + 3 + 3 + 4 = 12.