Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2016
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.74 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. typedef long long lli;
  4.  
  5. const lli MOD=1000000007;
  6. const int MAX=10010;
  7. lli F[MAX][MAX]; // this stores the binomial coefficients
  8. lli R[MAX][MAX]; // this stores the actual answer.
  9.  
  10. lli pow(lli base, lli exp){
  11. lli res=1;
  12. while(exp){
  13. if(exp%2) res=(res*base)%MOD;
  14. base=(base*base)%MOD;
  15. exp/=2;
  16. }
  17. return(res);
  18. }
  19.  
  20. int main(){
  21. int m,n;
  22. scanf("%d %d",&m,&n);
  23. F[1][1]=1;
  24. for(int i=1;i<=n;i++){
  25. F[i][0]=pow(n-1,i);
  26. }
  27. for(int i=2;i<=m;i++){
  28. for(int j=1;j<=n;j++){
  29. if(j==n) F[i][j]=(F[i-1][j-1]+n*F[i-1][j])%MOD;
  30. else F[i][j]= (F[i-1][j-1]+(n-1)*F[i-1][j])%MOD;
  31. }
  32. }
  33. printf("%lldn",F[m][n]);
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement