Existe uma maneira sistemática de determinar o número de números entre 10 e, digamos, 50, divisíveis por dígitos de suas unidades?

Existe uma maneira sistemática de determinar o número de números entre 10 e, digamos, 50, divisíveis por dígitos de suas unidades?
Anonim

Responda:

O número de números entre #10# e # 10k # divisível pelo seu dígito de unidades pode ser representado como

#sum_ (n = 1) ^ 9 fl ((k * gcd (n, 10)) / n) #

Onde #fl (x) # representa a função floor, mapeamento # x # para o maior número inteiro menor ou igual a # x #.

Explicação:

Isso equivale a perguntar quantos inteiros #uma# e # b # existe onde # 1 <= b <5 # e # 1 <= a <= 9 # e #uma# divide # 10b + a #

Observe que #uma# divide # 10b + a # se e apenas se #uma# divide # 10b #. Assim, basta encontrar quantos # b #s existe para cada #uma#. Além disso, observe que #uma# divide # 10b # se e somente se cada fator primo de #uma# também é um fator primordial de # 10b # com multiplicidade apropriada.

Tudo o que resta, então, é passar por cada #uma#.

#a = 1 #: Como todos os inteiros são divisíveis por #1#, todos os quatro valores para # b # trabalhos.

# a = 2 #: Como #10# é divisível por #2#, todos os quatro valores para # b # trabalhos.

# a = 3 #: Como #10# não é divisível por #3#, nós devemos ter # b # sendo divisível por #3#, isso é, # b = 3 #.

# a = 4 #: Como #10# é divisível por #2#, nós devemos ter # b # como divisível por #2# ter a multiplicidade apropriada. Portanto, # b = 2 # ou # b = 4 #.

# a = 5 #: Como #10# é divisível por #5#, todos os quatro valores para # b # trabalhos.

# a = 6 #: Como #10# é divisível por #2#, nós devemos ter # b # como divisível por #3#, isso é, # b = 3 #.

# a = 7 #: Como #10# não é divisível por #7#, nós devemos ter # b # como divisível por #7#. Mas #b <5 #e, portanto, nenhum valor para # b # trabalho.

# a = 8 #: Como #10# é divisível por #2#, nós devemos ter # b # como divisível por #4#, isso é, # b = 4 #

# a = 9: # Como #10# não é divisível por #3#, nós devemos ter # b # como divisível por #3^2#. Mas #b <5 #e, portanto, nenhum valor para # b # trabalho.

Isto conclui cada caso, e assim, somando-os, chegamos, como concluímos na pergunta, #17# valores. Este método pode ser facilmente estendido para valores maiores, no entanto. Por exemplo, se quiséssemos ir de #10# para #1000#, nós restringiríamos # 1 <= b <100 #. Então, olhando # a = 6 #digamos que teríamos #2# divide #10# e assim #6# divide # 10b # se e apenas se #3# divide # b #. tem #33# múltiplos de #3# na faixa de # b #e assim #33# números que terminam em #6# e são divisíveis por #6# entre #10# e #1000#.

Em um mais curto, mais fácil de calcular notação, usando as observações acima, podemos escrever o número de inteiros entre #10# e # 10k # Como

#sum_ (n = 1) ^ 9 fl (k / (n / gcd (n, 10))) = sum_ (n = 1) ^ 9 fl ((k * gcd (n, 10)) / n) #

Onde #fl (x) # representa a função floor, mapeamento # x # para o maior número inteiro menor ou igual a # x #.