C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

例を使用したC++のnegative_binomial_distribution


このチュートリアルでは、C++のnegative_binomial_distributionを理解するためのプログラムについて説明します。

この関数は、負の二項離散分布に従い、このランダム分布に従って整数を生成します。

#include <bits/stdc++.h>
using namespace std;
int main() {
   //setting number of experiments
   const int exps = 10000;
   const int numberstars = 100;
   default_random_engine generator;
   negative_binomial_distribution<int> distribution(4, 0.5);
   int p[10] = {};
   for (int i = 0; i < exps; ++i) {
      int counting = distribution(generator);
      if (counting < 10)
         ++p[counting];
   }
   cout << "Negative binomial distribution with "<< "( k = 4, p = 0.5 ) :" << endl;
   //printing the sequence from the array
   for (int i = 0; i < 10; ++i)
      cout << i << ": " << string(p[i] * numberstars / exps, '*') << endl;
   return 0;
}

出力

Negative binomial distribution with ( k = 4, p = 0.5 ) :
0: *****
1: ************
2: ****************
3: ***************
4: *************
5: **********
6: ********
7: *****
8: ***
9: **

  1. C++でスワップする最小の文字列

    文字列sと、文字列ペア内のインデックスのペアの配列を指定したとします。ここで、pairs [i] =[a、b]は、文字列の2つのインデックス(0-インデックス)を示します。指定されたペアのインデックスの任意のペアで、必要に応じて何度でも文字を交換できます。スワップを使用した後にsを変更できる辞書式最小の文字列を見つける必要があります。したがって、入力がs =“ dcab”およびpairs =[[0,3]、[1,2]]のような場合、出力は“ bacd”になります。 s[0]とs[3]、s =bcadを交換してから、s[1]とs[2]、s=bacdを交換します。 これを解決するには、次の手順に従

  2. 例を使用したC++STLの配列data()

    アレイ は、連続したメモリ位置に格納されている同じデータ型の要素のコレクションです。 C ++標準ライブラリには、配列の機能をサポートする多くのライブラリが含まれています。そのうちの1つは配列data()メソッドです。 C ++の配列data()は、オブジェクトの最初の要素を指すポインターを返します。 構文 array_name.data(); パラメータ 関数が受け入れるパラメーターはありません。 リターンタイプ 配列の最初の要素へのポインタ。 例 Array Data()メソッドの使用を説明するプログラム- #include <bits/stdc++.h> usi