PEをMathematicaで

Project Eulerに挑戦してみよう

Project Euler 130 / 素数桁レピュニットと同じ性質を持つ合成数

1のみからなる数をレピュニット数という。長さ k のレピュニット数を R(k) であらわす。
R(6) = 111111

GCD(n, 10)=1 となる正整数 n について, 必ず正整数 k が存在し n が R(k) を割り切ることが証明できる。A(n) でそのような最小の k を表す。
A(7) = 6, A(41) = 5

5より大きい素数 p について, A(p) が p-1 を割り切ることが知られている。p = 41 のときには A(41)=5 であり,40は5で割り切れる。

非常に少ないのだが,合成数においても上が成立する場合がある。最初の5つの例は 91, 259, 451, 481, 703 である。

GCD(n, 10)=1 かつ A(n) が n-1 を割り切るような最初の25個の合成数 n の総和を求めよ。

Problem 130 - Project Euler

この前後のレピュニットの問題を解いたあとでは易しい問題です。他の問題用のコードをコピペしてちょっといじるだけで解けます。

条件をみたす25個の数はこのようになっています。