fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. long long power(long long x, long long y, long long p){
  4. long long res = 1;
  5. while(y>0){
  6. if(y&1) res=(res*x)%p;
  7. y=y>>1;
  8. x=(x*x)%p;
  9. }
  10. return res;
  11. }
  12. long long mod(long long n,long long p){
  13. return power(n, p - 2, p);
  14. }
  15. long long nCr(long long n, long long r, long long p){
  16. if(n<r) return 0;
  17. if(r==0) return 1;
  18. long long a[n + 1];
  19. a[0]=1;
  20. for(int i=1;i<=n;i++) a[i]=(a[i-1]*i)%p;
  21. return (a[n]*mod(a[r],p)%p*mod(a[n-r],p)%p)%p;
  22. }
  23. int main()
  24. {
  25. int t;
  26. cin>>t;
  27. while(t--){
  28. long long a,b,p=1000000007;
  29. cin>>a>>b;
  30. cout<< nCr(a,b, p);
  31. cout<<"\n";
  32. }
  33. }
Success #stdin #stdout 0.01s 5280KB
stdin
2
1000 1000
1000 800
stdout
1
358633491