ゴルフルーカス・レマーの初期テスト

あなたの仕事は、Lucas-Lehmerの素数性テストを使って入力番号が素数であるかどうかをチェックするプログラムを書くことです。この素数候補は、pが素数である
2 p -1 という形をしています。 (メルセンヌ素数)

ルーカス・レマー試験

n番目のメルセンヌ数は、n-1番目のルーカス・レマー数(LLN)の約数であれば、素数です。
再帰アルゴリズムに基づいて、フィボナッチ数と同様にLLNを計算することができます。

L = (L)^2 - 2

The LLN for 2 is 14. So, for p=3, LLN<3-1>=14

評価

  • 入力としてpを受け取る関数を提出する必要があります( 2 ^ p-1
  • 最短の解決策が得られます。
  • ソリューションでLucas-Lehmerテストを使用する必要があります
  • コードは実行可能でなければなりません。
  • 出力:ブール値または1 =プライム/ 0 =プライムでない

テスト:

p --> 2^p-1  --> LLN --> ?
3 --> 7      --> 14  --> prime
5 --> 31     --> 37634 > prime (1214*31)

がんばろう

ベストアンサー

Python 2, 51 bytes

p=input()
s=4
exec's=(s*s-2)%(2**p-1);'*(p-2)
s>0>x

2 – お試しください!

出力は終了コードによるものです

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です