Advertisement
Guest User

Untitled

a guest
May 24th, 2022
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.63 KB | None | 0 0
  1. int n,m;
  2. int binomialCoeff(int n, int r)
  3. {
  4.  
  5.     if (r > n)
  6.         return 0;
  7.     long long int m = 1000000007;
  8.     long long int inv[r + 1] = { 0 };
  9.     inv[0] = 1;
  10.     if(r+1>=2)
  11.     inv[1] = 1;
  12.  
  13.     for (int i = 2; i <= r; i++) {
  14.         inv[i] = m - (m / i) * inv[m % i] % m;
  15.     }
  16.  
  17.     int ans = 1;
  18.     for (int i = 2; i <= r; i++) {
  19.         ans = ((ans % m) * (inv[i] % m)) % m;
  20.     }
  21.     for (int i = n; i >= (n - r + 1); i--) {
  22.         ans = ((ans % m) * (i % m)) % m;
  23.     }
  24.     return ans;
  25. }
  26.  
  27.  
  28. signed main()
  29. {
  30.     fast
  31.     cin>>n>>m;
  32.  
  33.     cout<<binomialCoeff(n+2*m-1,2*m)<<endl;;
  34.  
  35.   return 0;
  36. }
  37.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement