Description
Input
Output
Sample Input1:
1 2
3 3
Sample Input2:
2 5
4 5
6 7
Sample Output1:
1
Sample Output2:
0
7
Data Constraint
对于n个物体中选取m个物体,可以想对于第n个物体的选取方式只有选和不选,那么可得
c(n,m)=c(n-1,m)+c(n-1,m-1)
看到这条式子,发现特别像杨辉三角,在统计n,m的范围内有多少个mod k为0即可。
var
a,s:array[0..5000,0..5000] of longint;
i,j,t,k,n,m:longint;
begin
readln(t,k);
a[1,1]:=1 mod k;
for i:=2 to 2100 do
for j:=1 to i do
a[i,j]:=(a[i-1,j-1]+a[i-1,j]) mod k;
for i:=1 to 2100 do
for j:=1 to 2100 do
begin
s[i,j]:=s[i-1,j]+s[i,j-1]-s[i-1,j-1];
if (a[i,j]=0)and(j<=i) then inc(s[i,j]);
end;
for i:=1 to t do
begin
readln(n,m);
writeln(s[n+1,m+1]);
end;
end.