これはPythonによって行われます
累乗演算のコレクションの合計をタプルのリストとして表すとします。各タプルには、基数と指数の 2 つの整数が含まれます。たとえば、リストは2 4 + 3 5 + (−6) 3[(2,4),(3,5),(-6,3)]
のべき乗の合計を表します。
sumOfPowers(nes, ps)
1 つ以上のタプルのリストnes
(つまりnes
の形式[(a1,n1),...,(ak,nk)]
) を最初の引数として取り、1 つ以上の素数のリストps
(つまり の形式[p1,...,pm]
) を 2 番目の引数として取る関数を実装します。この関数は、次の条件が満たされている限り、べき乗の合計の正しい結果を返す必要があります (たとえば、メモリと時間が無制限のコンピューターの場合)。
0 ≤ a1 n1 + ... + ak nk < p1 ⋅ ... ⋅ pm
2 番目のリストには別個の素数が含まれていると想定できます。最初の入力リストの数値に特定のパターンや関係があるとは思わないかもしれません。それらは任意の順序、任意のサイズにすることができ、因子を共有する場合と共有しない場合があります。実装は、非常に大きな入力に対して効率的に機能する必要があります