Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

방정식 x1 + x2 +…의 적분 솔루션의 수. + xN =C++에서 k

<시간/>

방정식의 해는 다음과 같습니다.

  • 방정식의 음이 아닌 적분 솔루션의 수는 $\left(\begin{array}{c}n-k+1\\ k\end{array}\right)$입니다.
  • 방정식의 양의 적분 솔루션의 수는 $\left(\begin{array}{c}k-1\\ n-1\end{array}\right)$입니다.

필요한 답변을 얻으려면 둘 다 추가하십시오. 예를 들어 보겠습니다.

입력

n = 4
k = 7

출력

140

알고리즘

  • 숫자 n과 k를 초기화합니다.
  • 음수가 아닌 정수의 적분 해를 구합니다.
  • 둘 다 추가합니다.
  • 답을 반환합니다.

구현

다음은 위의 알고리즘을 C++로 구현한 것입니다.

#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) &l<t; endl;
   return 0;
}

출력

위의 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

140