Heim >Backend-Entwicklung >C++ >Was ist in der Sprache C der Maximalwert eines Binomialkoeffizienten?
Angenommen eine positive Ganzzahl „N“. Wir müssen den größten Koeffiziententerm aller Binomialkoeffizienten finden. Die Sequenz der
binomialen Koeffizienten lautet nc0, nc1, nc2,…, ncr,…, ncn -2, nCn-1, nCn
Finden Sie den Maximalwert von nCr.
<sub>n</sub>C<sub>r</sub> = n! / r! * (n - r)!
Eingabe - N=4
Ausgabe - Maximaler Koeffizient - 6
Erläuterung - 4C0= 1, 4C1 = 4, 4 C 2 = 6, 4C3 = 4, 4C4 = 1
In diesem Fall beträgt der maximale Koeffizient also 6.
Eingabe - N=5
Ausgabe - Maximaler Koeffizient - 10
Erläuterung - 5C0= 1, 5C1 = 5, 5 C 2 =10, 5C3 = 10, 5C4 = 5, 5C5 = 1
In diesem Fall beträgt der maximale Koeffizient also 10.
Wir erhalten die Eingabe von N vom Benutzer.
Die Funktion maxCoeff(int n) akzeptiert einen Parameter „n“ und gibt den größten Koeffizienten zurück, der bisher in C[n+1][n+1] gefunden wurde.
Initialisieren Sie die Min- und Max-Variablen mit 0. „min“ wird verwendet, um über das C[][]-Array zu iterieren, und „max“ wird verwendet, um den maximalen gefundenen Koeffizientenwert zu speichern.
Die Schleife mit i von 0 bis n wird verwendet, um das C[][]-Array zu initialisieren.
Jetzt iterieren Sie in einer weiteren Schleife zum kleineren von „i“ oder „n“.
Wenn i==j, dann C[i][j]==1. Ansonsten gilt C[i][j] = C[i-1][j-1] + C[i-1][j].
Jetzt iterieren Sie erneut durch das gesamte C[][] und speichern Sie den maximalen Koeffizienten in max.
Ergebnisse zurückgeben.
Demonstration
#include <stdio.h> int maxCoeff(int n){ int C[n+1][n+1]; int max=0,min=0; // Calculate value of Binomial Coefficient in for (int i = 0; i <= n; i++){ min=i<n?i:n; for (int j = 0; j <= min; j++){ if (j == 0 || j == i) C[i][j] = 1; else C[i][j] = C[i-1][j-1] + C[i-1][j]; } } for (int i = 0; i <= n; i++){ max = max> C[n][i] ? max: C[n][i]; } return max; } int main(){ int N = 3; printf("Maximum Coefficient :%d", maxCoeff(N) ); return 0; }
Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert: −
Maximum Coefficient: 3
Das obige ist der detaillierte Inhalt vonWas ist in der Sprache C der Maximalwert eines Binomialkoeffizienten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!