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

Set in C ++ STLを使用して、右側の小さい要素をカウントします


このチュートリアルでは、C++STLのsetを使用して右側の小さな要素をカウントするプログラムについて説明します。

このために、アレイが提供されます。私たちのタスクは、新しい配列を作成し、現在の要素の右側のその位置に小さい要素の数を追加することです。

#include <bits/stdc++.h>
using namespace std;
void count_Rsmall(int A[], int len){
   set<int> s;
   int countSmaller[len];
   for (int i = len - 1; i >= 0; i--) {
      s.insert(A[i]);
      auto it = s.lower_bound(A[i]);
      countSmaller[i] = distance(s.begin(), it);
   }
   for (int i = 0; i < len; i++)
      cout << countSmaller[i] << " ";
}
int main(){
   int A[] = {12, 1, 2, 3, 0, 11, 4};
   int len = sizeof(A) / sizeof(int);
   count_Rsmall(A, len);
   return 0;
}

出力

6 1 1 1 0 1 0

  1. C++で連続する要素のXORを使用して配列の要素を検索する

    n個の要素のリストを見つける必要があると考えてください。ただし、実際の配列の2つの連続する要素のXOR値があります。また、実際の最初の要素が示されています。したがって、配列要素がa、b、c、d、e、fの場合、指定された配列はa ^ b、b ^ c、c ^ d、d ^ e、およびe^fになります。 aという名前の最初の番号が与えられているので、すべての番号を見つけるのに役立ちます。実際の配列の2番目の要素を検索する場合は、b =a ^ arr [i]を実行する必要があり、2番目の要素c =b ^arr[1]などを実行する必要があります。 例 #include<iostream> u

  2. STLを使用したC++の配列製品

    これは、配列製品を見つけるためのC++プログラムの例です。 アルゴリズム Begin Initialize the values of array. Call used defined function accumulate to return the product of array. Print the solution. End. サンプルコード #include <iostream> #include <numeric> using namespace std; int ProductOfArray(int p[], int n) { &nbs