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

C++で製品がN未満の順序対をカウントします


数Nが与えられます。目標は、積がN未満になるような正の数の順序対を見つけることです。

これを行うには、i =1からi

例を挙げて理解しましょう。

入力

N=4

出力

Ordered pairs such that product is less than N:5

説明

Pairs will be (1,1) (1,2) (1,3) (2,1) (3,1)

入力

N=100

出力

Ordered pairs such that product is less than N: 473

説明

Pairs will be (1,1) (1,2) (1,3)....(97,1), (98,1), (99,1). Total 473.

以下のプログラムで使用されているアプローチは次のとおりです

  • 整数Nを取ります。

  • 関数productN(int n)はnを取り、product の順序対の数を返します。

  • ペアの初期変数カウントを0とします。

  • ペアを作成するために2つのforループを使用してトラバースします。

  • i=1からi

  • カウントを1ずつインクリメントします。

  • すべてのループの終わりに、カウントにはそのようなペアの総数が含まれます。

  • 結果としてカウントを返します。

#include <bits/stdc++.h>
using namespace std;
int productN(int n){
   int count = 0;
   for (int i = 1; i < n; i++){
      for(int j = 1; (i*j) < n; j++)
         { count++; }
   }
   return count;
}
int main(){
   int N = 6;
   cout <<"Ordered pairs such that product is less than N:"<<productN(N);
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

Ordered pairs such that product is less than N:10

  1. C++でbよりも大きいプレフィックス

    この問題では、strをn回追加することによって文字列が作成されるように、aとbおよび整数Nのみを含む文字列strが与えられます。私たちのタスクは、aの数がbの数よりも多い部分文字列の総数を出力することです。 問題を理解するために例を見てみましょう Input: aab 2 Output: 9 Explanation: created string is aabaab. Substrings with count(a) > count(b) : ‘a’ , ‘aa’, ‘aab’, ‘aaba&rsquo

  2. C++でのY未満の数のセットの最小数

    問題の説明 連続する数字の文字列と数字のYが与えられた場合、タスクは、すべてのセットが以下のルールに従うように最小セットの数を見つけることです- セットには連続した数字が含まれている必要があります 数字を複数回使用することはできません。 セット内の数はYを超えてはなりません。 例 str =“ 1234”およびY =20の場合、以下のセットが作成されるため、答えは3です- {12}{3}および{4} アルゴリズム 文字列を数値に変換 数値がY以下の場合は、f=1とマークします 数値がYを超える場合は、f =1の場合はカウントを増やし、fを0として再初期化し、numをs [i]-‘0