乘法逆元 組合數

2022-08-20 08:06:10 字數 953 閱讀 1482

要求(a / b) mod p的值,但 a 很大,無法直接求得a / b的值時,就要用到乘法逆元。 

b * x ≡ 1 (mod p) 

x的最小正整數解k叫做b關於模p的乘法逆元。

(a / b) mod p = (a * k) mod p

證明:k = (n*p + 1) / b

(a * k) mod p = (a * (n*p + 1) / b) mod p = (a / b * (n*p + 1) ) mod p = (a / b * (n*p + 1) mod p ) mod p = (a / b) mod p

b < p 且 b, p互質

簡潔寫法

long

long pow_m(long

long a, int

n)

return

s;}

p為素數,且b和p互質

long

long pow_m(long

long a, int

n)

return

s;}

k = pow_m(b, p - 2) % p

const

int mod = 1e9 + 7

;const

int max = 2e5 + 100

;long

long

fac[max];

long

long

inv_fac[max];

void

init()

inv_fac[max - 1] = inv(fac[max - 1

], mod);

for(int i = max - 2; i >= 0; i--)

}long

long c(int m, int

n)

扔硬幣 (逆元 組合數學)

有n枚硬幣,每枚硬幣扔出來是正面和反面的概率各佔50 小明同時扔下了n枚硬幣後,已知至少有m枚硬幣是反面。請問恰好有k枚硬幣是正面的概率是多少。輸入t,代表有t組資料。每組資料輸入乙個數n,m,k,代表有n枚硬幣,丟擲以後至少有m枚是反面的情況下,恰好有k個正面的概率。t 1000,n 1e5,m ...

逆元法求組合數

a b p a p b p a b p a p b p a b p a p b p 但是 a b frac ba p amo dpbm od p frac bmodpa modp 這種時候就要用到逆元 在求組合數時 c nm tbinom mn n m n m frac m n m n p n m ...

計數 (快速冪 逆元 組合數學隔板法)

計數時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 小sun最近對計數問題來了興趣,現在他有乙個問題想問問你 有乙個含有n個數字的序列,每個數的大小是不超過1000的正整數,同時這個序列是個單調不增序列。但是很不幸的...