summaryrefslogtreecommitdiff
path: root/math/binomial.cpp
blob: 9605820268b0972cd4b2da98250820ebb81f8807 (plain)
1
2
3
4
5
6
7
8
9
10
// Laufzeit: O(k)
ll calc_binom(ll n, ll k) { // Sehr sicher gegen Overflows.
   ll r = 1, d;
   if (k > n) return 0;
   for (d = 1; d <= k; d++) { // Reihenfolge garantiert Teilbarkeit.
      r *= n--;
      r /= d;
   }
   return r;
}