fork download
  1. #include<iostream>
  2. using namespace std;
  3. const int mod =1000000007;
  4. int fact[20001];
  5. void factorial()
  6. { fact[0]=1;
  7. for(int i=1;i<2001;i++)
  8. {
  9. fact[i] = (fact[i-1]*i)%mod;
  10. }
  11. }
  12. // (n!%m)*((r!)^m-2)%m)*(((n-r)!)^m-2)%m)%m
  13. int POWER(int x,int y)
  14. {
  15. if(y==0)return 1;
  16. if(y%2==0)
  17. {
  18. x = POWER((x*x)%mod,y/2);
  19.  
  20. }
  21. else{
  22. x = x*POWER(x,y-1)%mod;
  23. }
  24. return x;
  25. }
  26. int ncr(int n,int r)
  27. {
  28. int ans = fact[n]%mod;
  29. ans = ((ans*(POWER(fact[r],mod-2)%mod)%mod)*(POWER(fact[n-r],mod-2)%mod))%mod;
  30. return ans;
  31. }
  32. int main()
  33. {int a,b;
  34. cin>>a>>b;
  35. int ans;
  36. int s=ncr((a+b-1),(b-1));
  37. ans=POWER(s,a);
  38. cout<<ans;
  39. }
Success #stdin #stdout 0s 4392KB
stdin
2 2
stdout
Standard output is empty