Computer >> Máy Tính >  >> Lập trình >> C ++

Số phần tử nhỏ hơn hoặc bằng một số nhất định trong một mảng con nhất định trong C ++

Bạn được cung cấp một số và các chỉ mục giới hạn dưới và trên của mảng con. Bạn cần đếm một số phần tử nhỏ hơn hoặc bằng số đã cho. Hãy xem một ví dụ.

Đầu vào

arr = [1, 2, 3, 4, 5, 6, 7, 8]
k = 4
lower = 0
upper = 5

Đầu ra

4

Có 4 phần tử giữa chỉ số 0 và 5 nhỏ hơn hoặc bằng 4.

Thuật toán

  • Khởi tạo chỉ mục mảng, số và mảng con.

  • Khởi tạo số đếm thành 0.

  • Viết một vòng lặp lặp từ chỉ mục dưới của mảng con đến chỉ mục trên của mảng con.

    • Nếu phần tử hiện tại nhỏ hơn hoặc bằng số đã cho, thì hãy tăng số lượng.

  • Trả lại số đếm.

Thực hiện

Sau đây là cách thực hiện thuật toán trên trong C ++

#include <bits/stdc++.h>
using namespace std;
int getElementsCount(int arr[], int n, int lower, int upper, int k) {
   if (lower < 0 || upper >= n || lower > upper) {
      return 0;
   }
   int count = 0;
   for (int i = lower; i <= upper; i++) {
      if (arr[i] <= k) {
         count += 1;
      }
   }
   return count;
}
int main() {
   int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8 };
   int n = 8, k = 4;
   cout << getElementsCount(arr, n, 0, 3, k) << endl;
   cout << getElementsCount(arr, n, 4, 7, k) << endl;
   return 0;
}

Đầu ra

Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.

4
0