LUOGU P2822 組合數問題

2021-08-20 20:28:52 字數 621 閱讀 7645

題面

由於要求對k取模為0的值,所以我們遞推求組合數時一直對k取模就行了

然後算出二維字首和,o(n^2)預處理,o(1)回答。bzoj上和這個不太一樣,

那個是要盧卡斯定理。

#include

#define ll long long

using

namespace

std;

const

int maxn = 2005;

inline

int rd()

while(ch>='0' && ch<='9')

return x*f;

}int n,m,t,k;

ll ans[maxn][maxn];

ll c[maxn][maxn];

int main()

ans[i][i+1]=ans[i][i]; //注意此處,因為ans[i][j]要被

} //ans[i-1][j]更新,當i=j時i比j小

for(register

int i=1;i<=t;i++)

return

0;}

luogu P2822 組合數問題

題面傳送門 對於這道題,其實題目很簡單,暴力很好打。想法1 11 對於每組輸入資料,暴力判斷兩重迴圈列舉,一重迴圈計算組合數。時間複雜度o t n3 o tn 3 o tn3 大概30 3030 分想法2 22 把每組數的組合存下來,直接呼叫。時間複雜度o t n2 o tn 2 o tn2 大概3...

P2822 組合數問題

題目描述 組合數c n mc n m 表示的是從n個物品中選出m個物品的方案數。舉個例子,從 1,2,3 三個物品中選擇兩個物品可以有 1,2 1,3 2,3 這三種選擇方法。根據組合數的定 義,我們可以給出計算組合數的一般公式 c n m m n m n 其中n 1 2 n 不清楚不要怪我,暫時找...

P2822 組合數問題

小蔥想知道如果給定 n,m 和 k,對於所有的 0 i n,0 j min i,m 有多少對 i,j i,j 滿足 ci取j 是 k 的倍數。輸入格式 第一行有兩個整數 t,kt,k,其中 tt 代表該測試點總共有多少組測試資料,k 的意義見問題描述。接下來 tt 行每行兩個整數 n,m,其中 n,...