提交时间:2023-08-16 12:08:30
运行 ID: 98609
#include<bits/stdc++.h> #define N 100010 #define int long long #define mod 1000000007 using namespace std; int t,n,k; int jc[N],inv[N]; int C(int x,int y){ if(!x) return 1; return jc[x]*inv[y]%mod*inv[x-y]%mod; } signed main(){ cin>>t; jc[0]=inv[0]=inv[1]=1; for(int i=1;i<=100000;i++) jc[i]=jc[i-1]*i%mod; for(int i=2;i<=100000;i++) inv[i]=(mod-mod/i)*inv[mod%i]%mod; for(int i=2;i<=100000;i++) inv[i]=inv[i-1]*inv[i]%mod; while(t--){ cin>>n>>k; int ans=0; for(int i=0;i<=k;i++) ans=(ans+C(n,i))%mod; cout<<ans<<endl; } return 0; }