计算C ++中排序数组中的较小元素

在本教程中,我们将讨论在C ++中对排序数组中的较小元素进行计数的程序。

在这种情况下,我们将得到一个数字,我们的任务是计算排序数组中小于给定数字的所有元素。

示例

#include <bits/stdc++.h>
using namespace std;
int countSmaller(int arr[], int n, int x){
   return upper_bound(arr, arr+n, x) - arr;
}
int main(){
   int arr[] = { 10, 20, 30, 40, 50 };
   int n = sizeof(arr)/sizeof(arr[0]);
   cout << countSmaller(arr, n, 45) << endl;
   cout << countSmaller(arr, n, 55) << endl;
   cout << countSmaller(arr, n, 4) << endl;
   return 0;
}

输出结果

4
5
0