Advertisement
a53

dinamica05

a53
Dec 4th, 2020 (edited)
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define M 123457
  3. #define ULL unsigned long long int
  4. using namespace std;
  5.  
  6. ULL pow_log(ULL n,int p)
  7. {
  8. ULL rezultat=1;
  9. while(p)
  10. {
  11. if(p&1)
  12. {
  13. rezultat=rezultat*n%M;
  14. --p;
  15. }
  16. n=n*n%M;
  17. p/=2;
  18. }
  19. return rezultat;
  20. }
  21.  
  22. int main()
  23. {
  24. int n,p;
  25. cin>>n>>p;
  26. cout<<52*pow_log(50,n-1)%M<<' ';
  27. ULL a[n+5],A[n+5];
  28. a[1]=A[1]=26;
  29. a[2] =(26*(a[1]+A[1]))%M;
  30. int i=2;
  31. while(i<=n)
  32. A[i]=26*a[i-1]%M,++i,a[i]=26*(a[i-1]+A[i-1])%M;
  33. cout<<(a[n]+A[n])%M<<' ';
  34. ULL dp[n+5][p+5];
  35. dp[1][1]=5;
  36. for(int i=1;i<=n;++i)
  37. dp[i][0]=pow_log(21,i);
  38. for(int i=2;i<=n;++i)
  39. for(int j=1;j<=p;++j)
  40. dp[i][j]=21*dp[i-1][j]%M+5*dp[i-1][j-1]%M,dp[i][j]%=M;
  41. ULL s=0;
  42. for(int j=0;j<=p;++j)
  43. s=(s+dp[n][j])%M;
  44. cout<<s;
  45. return 0;
  46. }
  47.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement