Problem 37 (Project Euler) [原文]
3797は面白い性質を持っている. まずそれ自身が素数であり, 左から右に桁を除いたときに全て素数になっている (3797, 797, 97, 7). 同様に右から左に桁を除いたときも全て素数である (3797, 379, 37, 3).
右から切り詰めても左から切り詰めても素数になるような素数は11個しかない. 総和を求めよ.
注: 2, 3, 5, 7を切り詰め可能な素数とは考えない.
Problem 35の枠組をそのまま使えます。素数の個数が限定されていましたが、おおざっぱに100万までとしたら一発でした。
コード中、最上位桁の数字が4, 6, 8, 9 の素数だけはスキップすることとして、他の細かい枝刈りは行いませんでしたが、実行速度も満足行くものになりました。