Números intocáveis α
Um número intocável é um número inteiro positivo que não pode ser expresso como a soma de todos os divisores adequados de qualquer número inteiro positivo (incluindo o próprio número intocável).
Por exemplo, o número 4 não é intocável, pois é igual à soma dos divisores adequados de 9: 1 + 3 = 4. O número 5 é intocável, pois não é a soma dos divisores adequados de qualquer número inteiro positivo. 5 = 1 + 4 é a única maneira de escrever 5 como a soma de números inteiros positivos distintos, incluindo 1, mas se 4 divide um número, 2 também, então 1 + 4 não pode ser a soma de todos os divisores adequados de qualquer número (uma vez que a lista de fatores teria que conter 4 e 2).
Acredita-se que o número 5 seja o único número ímpar e intocável, mas isso não foi comprovado: seguiria uma versão um pouco mais forte da conjectura de Goldbach. β
Existem infinitos números intocáveis, fato comprovado por Paul Erdős.
Algumas propriedades de intocáveis:
- Intocável é 1 maior que um primo
- Nenhum intocável é 3 maior que um primo, exceto 5
- Nenhum intocável é um número perfeito
- Até agora, todos os intocáveis, além de 2 e 5, são compostos.
Objetivo
Crie um programa ou função que obtenha um número natural n
por meio de parâmetros de entrada ou função padrão e imprima os primeiros n
números intocáveis.
A saída deve ter separação entre os números, mas isso pode ser qualquer coisa (por exemplo, novas linhas, vírgulas, espaços, etc.).
Isso deve poder funcionar pelo menos 1 <= n <= 8153
. Isso se baseia no fato de o arquivo b fornecido para a entrada OEIS γ subir n = 8153
.
As brechas padrão não são permitidas, como de costume.
Exemplo de E / S
1 -> 2
2 -> 2, 5
4 -> 2, 5, 52, 88
10 -> 2, 5, 52, 88, 96, 120, 124, 146, 162, 188
8153 -> 2, 5, 52, 88, 96, 120, ..., ..., ..., 59996
Isso é código-golfe , portanto, o menor número de bytes vence.
α - Wikipedia , β - MathWorld , γ - OEIS
Por alguma razão, isso foi marcado como duplicado para a pergunta 'encontrar números semiperfeitos', no entanto, as tarefas são completamente diferentes. Nesse caso, você deve verificar se nenhuma soma dos divisores perfeitos de qualquer número natural pode ser igual a um determinado número.
Respostas:
Pitão, 21 bytes
Aviso: incrivelmente lento. Teste a execução e o tempo abaixo.
É basicamente a força bruta possível, testa as fatorações até o número solitário em potencial ao quadrado mais um.
fonte
C, 104 bytes
Levará alguns minutos para y > 20, mas tanto faz.
fonte
Java, 310 bytes
Joguei o melhor que pude, mas estava mais interessado em garantir que funcionasse em tempo razoável. A versão não blindada é provavelmente mais interessante
fonte
Go, 396 bytes
Não é realmente um jogador de golfe, mas pode fazer todo o intervalo necessário. É executado em aproximadamente 20min e precisa de aproximadamente 7GB (independente de n). Cria uma matriz gigante para calcular a soma dos divisores para todos os números de até 59997 ao quadrado.
fonte