メビウス反転、ベルヌーイ数:人の数に

彼はベルヌーイ数を行うことはありません多項式時間で発見、彼が戻って問題を解決するための推奨しました。

それから私は神が本当に大きな問題ですが、いくつかの非常に重要な考え方があることを発見しました。

漏れの問題の後の知識を失うことができないか、そうでなければ、本当に不快で穴を埋めるために強制されます。

 

イタリアのタイトル方程式:

$ \和\ limits_ ^ {N} {iは1 =} \左[GCD \左(I、N \右)= 1 \右] I ^ $ D

クラシック反転:

$ = \合計\ limits_ ^ {N} I ^ D \合計\ limits_ {iは1 =} {J | I \と\ J | N} \ムー(J)$

$ = \合計\ limits_ {J | N} \合計\ limits_ {I = 1} ^ {\フラクショナルN {} {J}}(IJ)^ D \ムー(J)$

$ = \合計\ limits_ {J | N} \ムー(J)J ^ D \合計\ limits_ {i = 1から} ^ {\フラクショナルN {} {J}} I ^ dは$

自然数のパワーと数式が続きます。あなたはベルヌーイ数のことを聞いていなかった場合は、次のような結論を推測することができます。

ベルヌーイ数が聞いた場合は、特定日間、$ \合計\ limits_がいることを知っている{i = 1から} ^ {n}はI ^ D = \合計\ limits_ ^ {D + 1 {iが1 =} } a_iを\ n倍^ {I} $

$ $ a_iを、特定の要因を表し、ここで、nの変化に伴って変化しません。これは私が理論を証明していないだろう、正しいことが判明しました。

この場合、nはD + 1次の多項式、Dに関連するNと関連する複雑さの和が得られました。(出願番号ベルヌーイ)

ベルヌーイ数は、式:$ \和\ limits_ {I = 1} ^ {n}はI ^ D = \ FRAC {1} {D + 1} \和\ limits_ {I = 0} ^ {D}をC_ {D + 1} ^ {I} B_i N ^ {D + 1-I} $

だから、限り、我々はベルヌーイ数を解決するよう、あなたは上記のすべての$ a_iを$値を得ることができます。

しかし、最初に我々は、この問題の範囲のデータが続き、しませんでした私たちは多項式メロン絹の除去上記にD + 1にXの値を選択することができますので、あなたはすべての$ a_iを$値を解決することができ、非常に小さいです。

そして、自然数のパワーと質問が(あれば)我々は解決しました。オリジナルの式を簡素化するために続行します。

$ = \合計\ limits_ {J | N} \ムー(J)J ^ D \合計\ limits_ {i = 1から} ^ {D + 1}(\ FRAC {N} {J})^ I \回a_iを$

$ = \合計\ limits_ {I = 1} ^ {D + 1} a_iを\合計\ limits_ {J | N} \ムー(J)\倍のJ ^ D \回(\ FRAC {N} {J})^ I $

$ = \和\ limits_ {I = 1} ^ {D + 1} a_iを\回N ^ I \和\ limits_ {J | N} \ MU(J)\回J ^ {ジ} $

観察とそのタイプの後ろに、それは、製品の2つの関数の乗算である、まだ乗法関数であり、被験者は便利な素因数分解、について説明しました。

別の意味からは、各品質係数は順番に、唯一の素因数の数に考慮される$ \ムー(J)$ 0の残り時間を答えるために0または1寄与する。

したがって、考慮値のみ1とp型、そしてそれは、製品の関数であるので、その結果、乗算結果の各々について品質係数。

式の最終的な形:

$ = \和\ limits_ {I = 1} ^ {D + 1} a_iを\回N ^ I \ PROD \ limits_ {J = 1} ^ $(1-p_jは^ {D-1-I}){W}

確かに痛いAC。ミク神の導きに大きな感謝。

1の#include <cstdioを>
 2  の#define INT長い長い
 3  の#define MOD十億七
 4  int型、D、W、FAC [ 105 ]、INV [ 105 ]、N = 1、P [ 1005 ]、T [ 1005 ]、MX [ 102 ] [ 102 ]、ANS。
5  int型 POW(int型 B、INT T、INT A = 1){ ため(; T; T >> = 1、B = B * Bの%のMOD)であれば(T&1)A = A * Bの%のMOD。返す;}
 6  ボイドガウス(){
 7      INT iは= 1 ; I <= D + 1 ; ++ I){
 8          INT X = POW(MX [I] [I]、mod- 2 )。
9          int型 ; J <= D + J = 2 MX [I] [J] = MX [I] [J] * X%; ++ j)のMOD。
10          のためにINT J = I + 1、J <= D + 1 ; ++ j)のためのINT K = D + 2、K> = I; - k)はMX [J] [K] =(MX [J] [ K] -mx [I] [K] * MX [J] [I]%MOD + MOD)%のMOD。
11      }
 12      のためにINT I = D +1 ; I; - I)のためにINT J = I- 1 ; J; - j)はMX [J] [D + 2 ] =(MX [J] [D + 2 ] -mx [J] [I] * MX [i]は[D + 2 ]%MOD + MOD)%のMOD。
13  }
 14は、 メイン(){署名された
 15      のscanfを(" %LLD%LLD "、&​​D&W)、FAC [ 0 ] = 1 ;
16      のためにINTは iは= 1 ; I <= D; ++ I)[I] = FAC FACを[I- 1 ] * I%MOD。
17      INV [D] = POW(FAC [D]、mod- 2 )。
18      のためのint型I = D- 1 ;〜I; - I)INV [I] = INV [I + 1 ] *(I + 1)%のMOD。
19      のためにINT iが= 1 ; iが<= W; ++ I)のscanf(" %LLD%LLD "、&​​P [i]は、&​​T [i])と、N = N *はPOW(P [I]、T [ I])%のMOD。
20      のためにINT iは= 1 ; I <= D + 1 ; ++ I)MX [i]は[D + 2 ] =(MX [I- 1 ] [D + 2 ] + POW(I、D))%のMOD、MX [I] [ 1 ] = I。
21      のためにINT iが= 1 ; I <= D + 1 ; ++ I)のためにint型、J = 2、J <= D + 1 ; ++ j)はMX [I] [J] = MX [I]、[J- 1 ] * I%MOD。
22      ガウス()。
23      のためにINT iは= 1 ; I <= D + 1 ; ++ {I)
 24          のint  ベース = MX [i]は[D + 2 ] * POW(N、I)%のMOD。
25          のためのint型 J = 1 ; J <= W; ++ j)は基地 = ベース *(MOD + 1 -pow(P [j]は、D-I + mod- 1))%のMOD。
26          ANS =(ANS + 塩基)%のMOD。
27      }のprintf(" %のLLD \ n " 、ANS)。
28 }
私は今だけ泥孟ああで6ヶ月前に追いつきました

おすすめ

転載: www.cnblogs.com/hzoi-DeepinC/p/12013657.html