Um número próprio (também chamado de número colombiano ou Devlali) é um número natural x
, onde a equação n + <digit sum of n> = x
não tem soluções para nenhum número natural n
. Por exemplo, 21 não é um número próprio, pois n = 15
resulta em 15 + 1 + 5 = 21
. Por outro lado, 20 é um número próprio, pois não n
pode ser encontrado nenhum que satisfaça essa igualdade.
Como essa definição faz referência à soma dos dígitos, ela depende da base. Para os propósitos deste desafio, consideraremos apenas os números próprios da base 10, que são a sequência A003052 no OEIS. Os números próprios binários ( A010061 ) e base 100 ( A283002 ) também foram calculados.
O desafio
Dado um número inteiro positivo x
como entrada, x
emita um valor verdadeiro se for um número próprio na base 10 e, caso contrário, um valor falsey. Para esclarecimento dos valores de verdade e falsey, consulte este meta post sobre o assunto .
Você pode escrever um programa ou função completo, e entrada e saída podem ser fornecidas em qualquer um dos canais habituais. É claro que as brechas padrão são proibidas.
Isso é código-golfe , portanto, quanto menor a sua resposta (em bytes), melhor!
Casos de teste
Verdade:
1
3
5
7
9
20
31
86
154
525
Falsey:
2
4
6
8
10
15
21
50
100
500
Classificação
Aqui está um snippet de pilha para gerar uma classificação regular e uma visão geral dos vencedores por idioma.
Para garantir que sua resposta seja exibida, inicie-a com um título, usando o seguinte modelo de remarcação:
# Language Name, N bytes
onde N
está o tamanho do seu envio. Se você melhorar sua pontuação, poderá manter as pontuações antigas no título, identificando-as. Por exemplo:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Se você quiser incluir vários números no cabeçalho (por exemplo, porque sua pontuação é a soma de dois arquivos ou você deseja listar as penalidades do sinalizador de intérpretes separadamente), verifique se a pontuação real é o último número no cabeçalho:
# Perl, 43 + 2 (-p flag) = 45 bytes
Você também pode transformar o nome do idioma em um link que será exibido no snippet do placar de líderes:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes