給出n,p,求1~n所有數模p意義下的逆元.
無論是擴充套件歐幾里得還是費馬小定理都是o(n*log)的,會t,這題因為是求1~n的所有數的逆元,因而可以遞推,若要求inv[i],則可以設k=p/i,b=p%i.
那麼k*i+b=p
則k*i+b與0同餘.
所以k*i與-b同餘.
所以k*inv[b]與-inv[i]同餘.
所以inv[i]=p-k*inv[b]%p
因為inv[b]是已知的,所以可以做到o(n)算出答案.
#include
#include
#define ll long long
using
namespace
std;
ll n,m,inv[3001000];
int main()
}
洛谷 P3811 模板 乘法逆元
洛谷傳送門 這是一道模板題 給定n,p求1 n中所有整數在模p意義下的乘法逆元。一行n,p n行,第i行表示i在模p意義下的逆元。輸入 1複製 輸出 1複製 1 leq n leq 3 times 10 6,n p 200005281 n 3 106,n 20000528 輸入保證 pp 為質數。題...
乘法逆元 洛谷 P3811
這是一道模板題 給定n,p求1 n中所有整數在模p意義下的乘法逆元。輸入格式 一行n,p 輸出格式 n行,第i行表示i在模p意義下的逆元。輸入樣例 1 10 13輸出樣例 1 179 108112 5341 n 3 10 6 n輸入保證 p 為質數。這個題比較適合用線性演算法 a m 1 mod m...
luogu P3811 模板 乘法逆元
這是一道模板題 給定n,p求1 n中所有整數在模p意義下的乘法逆元。一行n,p n行,第i行表示i在模p意義下的逆元。10 13179 108112 534說明 1 leq n leq 3 times 10 6,n p 20000528 1 n 3 10 6,n 輸入保證 p p 為質數。逆元可以線...