Skip to content

Commit 45ea049

Browse files
committed
Binomial Coefficient in C++ using DP fixes #222
1 parent df73b98 commit 45ea049

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#include <bits/stdc++.h>
2+
using namespace std;
3+
4+
int binomial(int n, int r)
5+
{
6+
if (r > n)
7+
return 0;
8+
if (r == 0 || r == n)
9+
return 1;
10+
11+
int dp[n + 1][r + 1];
12+
for (int i = 1; i <= n; i++)
13+
{
14+
for (int j = 1; j <= r; j++)
15+
{
16+
if (i == j || j == 0)
17+
dp[i][j] = 1;
18+
else
19+
{ // we have taken a mod, so that higher results can be calculted too.
20+
dp[i][j] = (dp[i - 1][j - 1] + dp[i - 1][j]) % 10000007;
21+
}
22+
}
23+
}
24+
return dp[n][r];
25+
}
26+
27+
int main()
28+
{
29+
int n;
30+
int r;
31+
cin >> n >> r;
32+
return binomial(n, r);
33+
}

0 commit comments

Comments
 (0)