Introdução
Este é um desafio muito simples: basta contar os divisores de um número. Tivemos um desafio semelhante, mas mais complicado antes, mas pretendo que este seja de nível básico.
O desafio
Crie um programa ou função que, dado um número inteiro estritamente positivo N
, produza ou retorne quantos divisores possui, incluindo 1 e N
.
Entrada: Um número inteiro> 0. Você pode assumir que o número pode ser representado no tipo numérico nativo do seu idioma.
Saída: O número de divisores inteiros positivos que possui, incluindo 1 e o próprio número.
As submissões serão pontuadas em bytes . Você pode encontrar este site à mão, embora possa usar qualquer método razoável para gerar sua contagem de bytes.
Isso é código-golfe , então a pontuação mais baixa ganha!
Edit: Parece que a resposta Pyth de 5 bytes de FryAmTheEggman é a vencedora! Sinta-se livre para enviar novas respostas; se você conseguir algo mais curto, mudarei a resposta aceita.
Casos de teste
ndiv(1) -> 1
ndiv(2) -> 2
ndiv(12) -> 6
ndiv(30) -> 8
ndiv(60) -> 12
ndiv(97) -> 2
ndiv(100) -> 9
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ê deseja incluir vários números no seu cabeçalho (por exemplo, porque sua pontuação é a soma de dois arquivos ou 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 da tabela de classificação:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes