20
カーマイケル関数を計算する
タスクの説明 数論では、カーマイケル関数 λは正の整数かかり N戻る以上の正の整数kのようにk個の各整数の乗互いに素に、nは 1に等しいモジュロNを。 正の整数nが与えられた場合、解はλ(n)を計算する必要があります。バイト単位の最短コードが優先されます。 プログラムは理論的には任意の大きな入力に対して機能するはずですが、効率的である必要はありません。 ヒント すべてのλ(n)のシーケンスはOEIS A002322です。 未実装のPython実装は次のようになります from fractions import gcd def carmichael(n): coprimes = [x for x in range(1, n) if gcd(x, n) == 1] k = 1 while not all(pow(x, k, n) == 1 for x in coprimes): k += 1 return k (Pythonでは、pow(A, …