BZOJ3601 乙個人的數論

2022-05-09 15:17:12 字數 2419 閱讀 6605

試題描述

輸入見「試題描述

輸出見「試題描述

輸入示例

見「試題描述

輸出示例

見「試題描述

資料規模及約定

見「試題描述

題解如果題目給出的是某個數的質因數分解,思路就應該是構造積性函式。

它給出的函式無從知道是否是積性函式,並且即使它是積性函式我們也無法方便地求得 \(f_d(p^a)\),其中 \(p\) 是質數;這是因為互質的數把這個東西變得很難求。

那麼不妨莫比烏斯反演一波

\begin

\sum_^n \\

= \sum_^n \mu(t) } \\

= \sum_ ^} (it)^d } \\

= \sum_ ^} i^d }

\end

\(\sum_^n i^d\) 這個叫做自然數冪求和,它能夠表示成乙個關於 \(n\) 的 \(d+1\) 次多項式(這個證明應該顯然,我們把 \(n^d + (n-1)^d + (n-2)^d + \cdots + 2^d + 1^d\) 展開就會得到乙個關於 \(n\) 的多項式,顯然 \(n^d\) 項在合併同類項之前有 \(n\) 項,所以它就是 \(d+1\) 次多項式);現在,不妨令這個多項式的 \(i\) 次項係數為 \(c_i\),即

\[\sum_^ c_i n^i = \sum_^n i^d

\]這個 \(c_i\) 可以通過暴力求出前 \(d+1\) 項,然後高斯消元得出。(想拉格朗日插值的話也可以)

那麼我們可以繼續我們的反演了,接 \((1)\)

\begin

= \sum_ ^ \right) ^i } } \\

= \sum_^ n^i } } \\

= \sum_^ \mu(t) t^ }

\end

令 \(h_t(n) = \sum_ \mu(x) x^t\),不難發現 \(\mu(x)\)、\(x^t\) 都是積性函式,所以 \(\mu(x) x^t\) 是積性函式,那麼 \(h_t(n)\) 就是 \(\mu(x) x^t\) 與 \(1\) 狄利克雷卷積後的函式,也是積性的。

於是有\[h_t(n) = \prod_^w h_t(p_j^)

\]然後我們展開一下 \(h_t(p^a)\) 看看是什麼樣子(\(p\) 是質數)

\[h_t(p^a) = \sum_^a \mu(p^i) p^ = 1 - p^t

\]這是因為 \(\mu(1) = 1, \mu(p) = -1\)。

接 \((2)\),把剛推的這一坨帶進去

\[= \sum_^ ^w h_(p_j^) }

\]然後就可以暴力求了。

#include #include #include #include #include #include using namespace std;

#define rep(i, s, t) for(int i = (s), mi = (t); i <= mi; i++)

#define dwn(i, s, t) for(int i = (s), mi = (t); i >= mi; i--)

int read()

while(isdigit(c))

return x * f;

}#define maxn 1010

#define maxd 110

#define mod 1000000007

#define ll long long

int d, w, pr[maxn], ex[maxn];

int pow(int a, int b)

return ans;

}int a[maxd][maxd], coef[maxd];

void elim(int *a, int *b, int i, int n)

return ;

}void gauss(int n)

dwn(i, n, 1)

coef[i] = (ll)s * pow(a[i][i], mod - 2) % mod;

} return ;

}int h(int t, int p)

int main()

} gauss(d + 1);

int pown = 1, ans = 0;

rep(i, 1, d + 1)

ans += (ll)coef[i] * pown % mod * prod % mod;

if(ans >= mod) ans -= mod; }

printf("%d\n", ans);

return 0;

}

乙個人久了

乙個人久了,會懶得戀愛 乙個人久了,朋友會越重要 乙個人久了,會越來越喜歡聽歌 乙個人久了,會常常忘記帶 乙個人久了,對愛情會越來越挑剔 乙個人久了,會更加勤奮 乙個人久了,除了寂寞點外還是蠻開心的 乙個人久了,會慢慢變得成熟起來 乙個人久了,會比以前更重視更愛父母,更重視親情 乙個人久了,對所有的...

很愛乙個人

外邊的雨依然下著,沒有停的意思 下了兩天兩夜,感覺好悶 這幾天看著男友,很心疼,每天要洗碗,洗衣服 我很聽話不去惹寶貝生氣,醫生不讓我用冷水,我也很害怕 害怕身體因此而跨掉 我們都還年輕 以後的路還很長 這個代價會很大 我也希望這些日子能過的快些,自己的身體能恢復的快些,為此事我們花了一千元,想來不...

乙個人而已

黑夜如手冽風如喉 窗外的寒雪映白了竹樓 誰在夢中為我煮沸一杯清酒 茺涼的夜風霜雨雪 是誰的嫵媚風情把我淹沒 是誰的美麗 放蕩了我的心魔 是誰在無情地將我一刀一刀地割 直到割得滿地燃燒的鮮血開出美麗的紅蓮花朵 黑暗的夜冷風雨雪 是誰在靜悄悄地欣賞著那無盡的孤獨流淌在我的黑夜 身似激情背後的那片虛無 心...