Advertisement
dmkozyrev

401.cpp

Jul 24th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.54 KB | None | 0 0
  1. #include <cstdio>
  2.  
  3. long long C (int n, int k) {
  4.     if (n-k < k) {
  5.         return C(n, n-k);
  6.     }
  7.    
  8.     long long answer = 1;
  9.     for (int i = 1; i <= k; ++i) {
  10.         answer *= (n-k+i);
  11.         answer /= i;
  12.     }
  13.    
  14.     return answer;
  15. }
  16.  
  17. int main() {
  18.     int n, a, b;
  19.     scanf("%d %d %d", &n, &a, &b);
  20.    
  21.     auto answer = (__float128) C(n+a, a) * (__float128) C(n+b, b);
  22.    
  23.     long long high = answer / 1e17;
  24.     long long low = answer - high * (__float128)1e17;
  25.    
  26.     if (high != 0) {
  27.         printf("%lld%017lld", high, low);
  28.     } else {
  29.         printf("%lld", low);
  30.     }
  31.    
  32.     return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement