UNPKG

simple-math-32

Version:

Простая, но полезная математическая библиотека

18 lines (12 loc) 527 B
function binomialCoefficient(n, k) { if (k < 0 || k > n) return 0; // Оптимизация по симметрии: C(n, k) = C(n, n - k) k = Math.min(k, n - k); let result = 1; // Вычисляем C(n, k) по формуле произведения for (let i = 1; i <= k; i++) { result = (result * (n - k + i)) / i; } return Math.round(result); // Округляем, чтобы избежать ошибок из-за деления } module.exports = { binomialCoefficient };