PEをMathematicaで

Project Eulerに挑戦してみよう

Project Euler 35 / 巡回素数

197は巡回素数と呼ばれる。桁を回転させたときに得られる数 197, 971, 719 がすべて素数だからである。

100未満には巡回素数が13個ある。2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, 97である。

100万未満の巡回素数はいくつあるか?

Problem 35 - Project Euler


「回転」は IntegerDigits の RotateLeft / RotateRight でできます。

PrimeQ で素数かどうか調べて,全部 True のものを抽出すればOK。このチェックは And(論理積)でやりました。