Números semiperfectos
Un número semiperfecto / pseudoperfecto es un número entero igual a la suma de una parte o de todos sus divisores (excluyéndose a sí mismo). Los números que son iguales a la suma de todos sus divisores son perfectos.
Divisors of 6 : 1,2,3
6 = 1+2+3 -> semiperfect (perfect)
Divisors of 28 : 1,2,4,7,14
28 = 14+7+4+2+1 -> semiperfect (perfect)
Divisors of 40 : 1,2,4,5,8,10,20
40 = 1+4+5+10+20 or 2+8+10+20 -> semiperfect
Primitivo
Un número semiperfecto primitivo es un número semiperfecto sin divisores semiperfectos (excepto sí mismo :))
Divisors of 6 : 1,2,3
6 = 1+2+3 -> primitive
Divisors of 12 : 1,2,3,4,6
12 = 2+4+6 -> semiperfect
Como referencias, utilice la serie OEIS A006036 para números primarios semiperfectos y A005835 para semiperfectos.
Objetivo
Escribe un programa o una función en cualquier idioma. Tomará como entrada un número n como parámetro de función o desde STDIN / la alternativa más cercana a su idioma, y generará todos los números primitivos semi-perfectos del 1 al n (inclusive).
La salida debe formatearse como 6[separator]20[separator]28[separator]88...donde [separador] es como nueva línea, un espacio o una coma. No debe haber un [separador] inicial ni uno final.
Editar: puede dejar una nueva línea final
Ejemplos
entrada:
5
salida:
entrada:
20
salida:
6
20
entrada:
100
salida:
6 20 28 88
Puntuación
Este es el código de golf, por lo que gana el código más corto en bytes.
No intentes engañarnos con lagunas, por favor :).
¡Me alegraría que pudieras dejar una explicación de tu código de golf una vez que creas que has terminado de jugarlo!
KaYpara construirY, que se necesita en otros lugares. Sin embargo, podría imprimir por separado, como con enaYKKlugar deeaYK. Sin embargo, son 4 bytes de cualquier manera.