Heim > Backend-Entwicklung > C++ > Was ist in der Sprache C der Maximalwert eines Binomialkoeffizienten?

Was ist in der Sprache C der Maximalwert eines Binomialkoeffizienten?

WBOY
Freigeben: 2023-09-12 14:17:05
nach vorne
1401 Leute haben es durchsucht

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)!
Nach dem Login kopieren

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.

Die im folgenden Programm verwendete Methode ist wie folgt:

  • 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.

Beispiel

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;
}
Nach dem Login kopieren

Ausgabe

Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert: −

Maximum Coefficient: 3
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage