整理題意後 對於每個詢問其實就是
由於c(m,n)=c(m,m-n)
就變成了
其實就是在楊輝三角上的一列求其中的一段和
然後有個玄學的公式
什麼意思呢
證明是很容易得到的
所以把階乘預處理出來 由於1e9+7是質數 可以用費馬小定理算逆元 就可以o(1)回答
#include#define n 100010
#define mod 1000000007
#define int long long
using namespace std;
inline int qpow(int x,int y)
return ans;
}int n,m,fac[n],inv[n];
void init()
int c(int m,int n)
main()
cout<
return 0;
}
NOIP校內模擬 T1 排列樹(樹上的組合數)
假設當前節點now的子樹大小為size now的方案數是他的所有兒子內部如何分配的方案數相乘得到的 這個可以遞迴計算 不過對於那麼多兒子之間 他們分配走的標號可能是不同的 比如now將把2,3,4,5分配給他的子樹,那有可能是2,3 4,5 也有可能是2,4 3,5這樣分 所以還得套個組合數 c s...
NOIP校內模擬 T1 性感 手槍(dfs)
vis是乙個三維陣列 vis x y 0 代表第一次搜到原圖座標 x,y 的x 虛 座標,vis x y 1 代表第一次搜到原圖座標 x,y 的y 虛 座標,vis x y 2 代表是否搜過 這樣既可以判斷什麼時候進入了無限走狀態,又可以判斷是否死迴圈了 往前走一步又退回一步 include inc...
NOIP校內模擬 T1 性感 手槍(dfs)
vis是乙個三維陣列 vis x y 0 代表第一次搜到原圖座標 x,y 的x 虛 座標,vis x y 1 代表第一次搜到原圖座標 x,y 的y 虛 座標,vis x y 2 代表是否搜過 這樣既可以判斷什麼時候進入了無限走狀態,又可以判斷是否死迴圈了 往前走一步又退回一步 include inc...