A B NTT快速數論變換

2021-07-30 15:04:28 字數 1018 閱讀 4501

描述這是乙個非常簡單的問題。

wmq如今開始學習乘法了!他為了訓練自己的乘法計算能力,寫出了

n 個整數,並且對每兩個數a,

b 都求出了它們的乘積a×

b 。現在他想知道,在求出的n(

n−1)

2 個乘積中,除以給定的質數

m 餘數為k(

0≤k的有多少個。 輸入

第一行為測試資料的組數。

對於每組測試資料,第一行為

2 個正整數n,

m,2≤

n,m≤

60000

,分別表示整數的個數以及除數。

接下來一行有

n 個整數,滿足0≤

ai≤10

9 。

保證總輸出行數∑m

≤3×10

5 。 輸出

對每組資料輸出

m 行,其中第

i 行為除以

m 餘數為(i

−1) 的有多少個。

樣例輸入1

複製

2

4 52 0 1 7

4 22 0 1 6

樣例輸出1

302

0160

提示

對於第1組樣例,求出的乘積為0,

0,0,

2,7,

14 ,因而除以

5 餘數為

0 的有

3 個,餘數為

1 的有

0 個,餘數為

2 的有

2 個,餘數為

3 的有

0 個,餘數為

4 的有

1 個。 標籤

數論 **北方大學 acm多校訓練 第六場t

題解:將給出的數m求其原根記為w,然後將n個數都表示為w的冪的形式,這樣的話,兩數相乘再取模的操作就變成了,兩冪相加為定值的情況了。

根據兩數的冪和為一定值,想到卷積的性質。

快速傅利葉變換 快速數論變換

update 3.29.2017 2月10日初學,記得那時好像是正月十五放假那一天 當時寫了手寫版的筆記 過去近50天差不多忘光了,於是複習一下,具體請看手寫版筆記 參考文獻 picks miskcoo menci 阮一峰 i 表示逆時針旋轉90度 a bi 對應復平面上的向量 複數加法同向量 複數...

快速數論變換 NTT

今天的a題,裸的ntt,但我不會,於是白送了50分。於是跑來學一下ntt。題面很簡單,就懶得貼了,那不是我要說的重點。重點是ntt,也稱快速數論變換。在很多問題中,我們可能會遇到在模意義下的多項式乘法問題,這時傳統的快速傅利葉變換可能就無法滿足要求,這時候快速數論變換就派上了用場。考慮快速傅利葉變換...

模板 快速數論變換 NTT

code 對比先要把fft學習清楚才能進行.因為基本原理都是一樣的.fft是根據複數和n nn次單位根構造演算法的.但是,使用複數和單位根有以下兩個缺點 複數運算計算量大,常數比較高 複數是基於dou bledouble double 運算的,可能會出現精度誤差 這兩個缺點都很致命.但是,我們經常接...