Alignons 1 $.
1, 11, 111, 1111, 11111, 111111, 11111111, 111111111, 1111111111, …
Le nombre naturel $ R_n $ qui peut être arrangé en arrangeant $ 1 $ de cette manière est appelé __Repunit number (repunit number) __. [^ 1]
[^ 1]: Le nom Repunit vient de "Répété" + "Unité (1)"
C'est,
__ Le contenu peut être compris au niveau des mathématiques du secondaire, alors détendez vos épaules et amusez-vous! __
Étant donné une suite de nombres, c'est la tristesse de toute l'humanité que l'on veut trouver le terme général. Alors, trouvons d'abord le terme général pour le nombre de remboursements. Écrivons le $ n $ e numéro de repunit comme $ R_n = \ underbrace {1111 \ dots 11} _ {\ text {$ n $ digit}} $. À ce stade, $ R_n $ peut être considéré comme la somme des chaînes de rapport égal comme suit.
\begin{align}
R_n &= \underbrace{1111 \dots 11}_{\text{$n$chiffre}} \\
&= 1 + 10 + 100 + \dotsb + \underbrace{1000…00}_{\text{$n$chiffre}} = \sum_{k = 0}^{n - 1}10^k
\end{align}
Par conséquent, à partir de la formule de la somme des séquences de rapport égal,
\begin{align}
R_n = \frac{10^n - 1}{9}
\end{align}
Et j'ai pu trouver le terme général.
C'est ce que je voulais le plus écrire dans cet article. Le théorème suivant est valable pour le nombre de repunits [^ 2].
[^ 2]: AtCoder ABC174 C.Repsept a un problème avec ce théorème en arrière-plan.
Le nom du problème est Repsept. , Cela semble provenir de "Repeated" + "sept (7)"
Soit __ $ n $ un nombre naturel avec $ 2,5 $ comme facteur premier .__ __ A ce moment, il y a toujours un nombre de repunit divisible par $ n $ .__
Par exemple ... Si vous prenez $ 3 $ comme $ n $, vous obtenez $ R_3 = 111 $ comme le nombre de remboursements divisibles par 3 $. Si vous prenez 21 $ $ comme $ n $, vous obtenez $ R_6 = 111111 $ comme le nombre de remboursements divisibles par 21 $. Si vous prenez 877 $ $ comme $ n $, vous obtiendrez $ R_ {438} = \ underbrace {1111… 11} _ {\ text {438 chiffres}} $ comme le nombre de remboursements divisibles par 877 $.
C'est beau. C'est un théorème enchanteur qui ne peut être imaginé à partir de cette simple définition.
Prouvons ce théorème dans ce chapitre. Belle histoire de mathématiques au lycée a une preuve utilisant le petit théorème de Fermat, mais ici j'adopterai une autre approche.
Ici, Théorie de Hatosha Cette section explique. La réclamation est très simple.
Supposons maintenant que vous ayez des colombes à plumes $ M $ et des volières $ N (<M) $.
Ensuite, nous mettrons les pigeons dans chaque volière. À l'heure actuelle, la déclaration est qu'il existe une volière avec au moins 2 $ ou plus de pigeons.
Cela semble évident, mais c'est en fait très puissant et efficace dans divers domaines des mathématiques.
Cet article utilise également cette théorie du pigeonnier pour prouver le théorème ci-dessus.
Soit $ n $ un nombre naturel avec $ 2,5 $ comme facteur premier. Considérons maintenant $ n + 1 $ Repunit les numéros $ R_1, R_2,…, R_ {n}, R_ {n + 1} $. Il existe $ 1 \ leq i <j \ leq n + 1 $ qui est $ R_j \ equiv R_i \ \ \ (\ mathrm {mod}. C'est,
R_j - R_i \equiv 0 \ \ \ (\mathrm{mod}. n)
Est. En ce moment,
\begin{align}
R_j - R_i &= \frac{10^j - 1}{9} - \frac{10^i - 1}{9} \\
&= \frac{10^j - 10^i}{9} \\
&= 10^i \cdot \frac{10^{j - i} - 1}{9} \\
&= 10^i R_{j - i}
\end{align}
Parce qu'il peut être calculé comme
10^i R_{j - i} \equiv 0 \ \ \ (\mathrm{mod}. n)
Sera. Maintenant, $ n $ n'a pas 2,5 $ comme facteur premier, il est donc premier à 10 $,
R_{j - i} \equiv 0 \ \ \ (\mathrm{mod}. n)
Peut être. Par conséquent, nous avons pu obtenir le nombre de remboursements pouvant être divisé par $ n $.
Si vous passez un nombre comme argument de ligne de commande, voici le code pour trouver le nombre minimum de repunits pouvant être divisé par ce nombre. [^ 3]
[^ 3]: Même si je modifie ce code pour 777 $… 77 $, il ne passe pas comme TLE dans AtCoder ABC174 C. Repsept. > Une autre idée s'impose
get_repunit_length.py
import sys
def get_repunit_length(number):
if (number <= 0):
return -1
elif ((number % 2 == 0) or (number % 5 == 0)):
return 0
else:
repunit = 1
length = 0
while(True):
length += 1
if (repunit % number == 0):
return length
else:
repunit = repunit + 10 ** length
if __name__ == "__main__":
args = sys.argv
input = int(args[1])
result = get_repunit_length(input)
if (result == -1):
print("Veuillez saisir un nombre naturel.")
elif (result == 0):
print(f'{input}Il n'y a pas de nombre de repunit divisible par.')
else:
print(f'{input}Le nombre minimum de remboursements divisibles par est R_{result}est.')
C'est un bonus d'ici.
Un nombre Repunit qui est à la fois un nombre premier et un nombre premier est appelé un __Repunit premier nombre _. Par exemple, $ R_2 = 11 $ est un prime de repunit. De plus, $ R {19} = 1111111111111111111 $ est un prime de repunit. Quels sont les autres nombres premiers de Repunit? Le tableau suivant est publié sur Wikipedia. Ici, $ n $ signifie le $ n $ e numéro de repunit.
Année de découverte | découvreur | |
---|---|---|
- | - | |
- | - | |
- | - | |
1978 | Williams | |
1986 | Williams, Dubner | |
1999 | Dubner | |
2000 | Baxter | |
2007 | Dubner | |
2007 | Voznyy |
Seul ce nombre premier $ 9 $ est actuellement connu. Repunit L'existence d'innombrables nombres premiers est une question ouverte .
Nous ne savons pas quand le nombre de repunit sera premier, mais nous pouvons faire des recherches. Par exemple, si $ n $ est un nombre composé, alors $ R_n $ est également un nombre composé. [^ 4] [^ 4]: Veuillez noter que nous ne prétendons pas que $ R_n $ est un premier lorsque __ $ n $ est un premier __ Cela ressort immédiatement des propriétés suivantes concernant le nombre de remboursements:
__ Pour les nombres naturels $ n, m $, si $ m $ est divisible par $ n $, alors $ R_m $ est divisible par $ R_n $ .__
Veuillez considérer la preuve des propriétés ci-dessus. Je vais l'écrire ici aussi, alors veuillez l'utiliser comme réponse.
<détails> Alors, $ (10 ^ {m (k - 1)} + 10 ^ {m (k - 2)} + \ cdots + 1) $ est un nombre naturel, donc $ R_m $ est divisible par $ R_n $. Les mathématiques sont vraiment intéressantes.
Bien sûr, la plupart des domaines sont difficiles en utilisant pleinement l'analyse gorigori, l'algèbre et les mathématiques de phase, et la définition du problème lui-même est assez avancée.
Mais ce n'est pas tout.
Par exemple, simplement en organisant les nombres de manière appropriée ou en échangeant les nombres comme cette fois, il y a de magnifiques joyaux de mathématiques qui dorment là. [^ 5]
[^ 5]: Le secret de la combinaison caché dans la fonction triangulaire Mais vous venez d'organiser les nombres en zigzag (publicité)
Je pense que c'est incroyable.
Ce pourrait être une bonne idée de jouer avec quelques jeux de temps en temps et de jouer avec vos propres mathématiques.
__ Si vous avez des thèmes intéressants ou des découvertes, faites-le nous savoir! __
Recommended Posts
\begin{align}
R_{n} &= \frac{10^n - 1}{9} \\
&= \frac{10^{km} - 1}{9} \\
&= \frac{(10^m)^k - 1}{9} \\
&= \frac{(10^m - 1)(10^{m(k - 1)} + 10^{m(k - 2)} + \cdots + 1)}{9} \\
&= (10^{m(k - 1)} + 10^{m(k - 2)} + \cdots + 1)R_{m}
\end{align}
en conclusion