Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Đếm số phần tử nhỏ hơn hoặc bằng K trong mảng con C++

Cho một mảng, một số k và hai chỉ số lower, upper xác định mảng con. Nhiệm vụ là đếm số phần tử trong mảng con có giá trị nhỏ hơn hoặc bằng k.

Ví dụ

Đầu vào

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

Đầu ra

4

Trong đoạn từ chỉ số 0 đến 5 (các phần tử 1,2,3,4,5,6) có 4 phần tử ≤ 4.

Thuật toán

  • Khởi tạo mảng, số k và chỉ số mảng con.
  • Khởi tạo biến đếm = 0.
  • Duyệt từ lower đến upper:
    • Nếu arr[i] <= k thì tăng biến đếm.
  • Trả về biến đếm.

Triển khai 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++;
    }
    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; // Output: 4
    cout << getElementsCount(arr, n, 4, 7, k) << endl; // Output: 0
    return 0;
}

Kết quả

4
0