Số nghiệm nguyên không âm: C(n+k-1, k). Số nghiệm nguyên dương: C(k-1, n-1). Tổng cả hai là kết quả.
Ví dụ: n=4, k=7 → 140.
Giải thuật
- Hàm factorial(n)
- Hàm nCr(n, r) = factorial(n) / (factorial(n-r) * factorial(r))
- Kết quả = nCr(n+k-1, k) + nCr(k-1, n-1)
Ví dụ minh họa
#include <bits/stdc++.h>
using namespace std;
int factorial(int n) {
int product = 1;
for (int i = 2; i <= n; i++) product *= i;
return product;
}
int nCr(int n, int r) {
return factorial(n) / (factorial(n - r) * factorial(r));
}
int main() {
int n = 4;
int k = 7;
cout << nCr(n + k - 1, k) + nCr(k - 1, n - 1) << endl;
return 0;
}
Đầu ra
140