Advertisement
gerkulesov

Maxi_Task

Jun 2nd, 2020
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.66 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3.  
  4. using namespace std;
  5.  
  6. int C(int n, int k) {
  7.     double ans = 1;
  8.     for (int i=1; i<=k; i++)
  9.         ans = ans * (n-k+i) / i;
  10.     return (int) (ans + 0.01);
  11. }
  12.  
  13. double fast_pow(double a, int b) {
  14.     if (b == 0) return 1;
  15.     else {
  16.         double t = fast_pow(a, b/2);
  17.         if (b%2) return t*t*a;
  18.         else return t*t;
  19.     }
  20. }
  21.  
  22. int main()
  23. {
  24.     int m, n, k;
  25.     cin >> m >> n >> k;
  26.    
  27.     double ans = 0.0;
  28.    
  29.     for (int i=1; i<=k; i++)
  30.         ans += C(k,i) * fast_pow(1./m/n, i) * fast_pow(1. - 1./m/n, k-i);
  31.    
  32.     ans *= m*n;
  33.    
  34.     cout << fixed << setprecision(10) << ans;
  35.    
  36.     return 0;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement