程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 對於C(n,k)取模,k350c模具

對於C(n,k)取模,k350c模具

編輯:C++入門知識

對於C(n,k)取模,k350c模具


2016.1.26

 

法一:直接根據定義式,求乘法逆元即可

法二:借助關於n!mod p,那麼根據C(n,k)的定義式並結合乘法逆元即可求解。

法三:借助盧卡斯定理求解

 

特別注意:在C(n,k)模p等於0的情況下,上述方法均不奏效,所以需要特判。

特判方法舉例:如在采取法一時,分子中因子p的個數為e1,分母中因子p的個數為e2,那麼e1=e2時模p不得0,可繼續進行;若e1>e2,則模p為0,直接返回0.

                   如在采取法三時,有這樣一句話:C(a,b)模p不等於0的充要條件是a在p進制下的每一位都不小於b在p進制下對應的位,C(a,b)模p等於0的充要條件是a在p進制下至少有一位小於b在p進制下對應的位

                   看不懂沒關系,看這道題就明白了:聰聰考試(主要是盧卡斯定理那部分)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved