কম্পিউটার টিউটোরিয়াল

C++ প্রোগ্রামে অ্যারে রেঞ্জ কোয়েরি: মান ও ফ্রিকোয়েন্সি সমান উপাদান গণনা


ভূমিকা

একটি অ্যারে এবং কোয়েরি রেঞ্জ [start, end] দেওয়া থাকলে, ওই রেঞ্জে কতগুলো উপাদান আছে যাদের মান (value) ও ফ্রিকোয়েন্সি (frequency) সমান, সেটি বের করতে হবে।

উদাহরণ

অ্যারে: {1,5,2,3,1,3,5,7,3,9,8}
Q(1,8): ১ একবার, ৩ তিনবার → উত্তর ২
Q(0,2): ১ একবার → উত্তর ১

C++ প্রোগ্রাম উদাহরণ

#include 
#include 
using namespace std;

int query(int start, int end, int arr[]) {
    map freq;
    for (int i = start; i <= end; i++) freq[arr[i]]++;
    int count = 0;
    for (auto x : freq) if (x.first == x.second) count++;
    return count;
}

int main() {
    int A[] = {1,5,2,3,1,3,5,7,3,9,8};
    int queries[][2] = {{0,1},{1,8},{0,2},{1,6},{3,5},{7,9}};
    for (int i = 0; i < 6; i++)
        cout << "Query " << i+1 << ": " << query(queries[i][0], queries[i][1], A) << endl;
    return 0;
}

আউটপুট

Query 1: 1
Query 2: 2
Query 3: 1
Query 4: 1
Query 5: 1
Query 6: 0
  1. C প্রোগ্রাম: অ্যারে-এর উপাদানগুলোর গুণফল (Product) বের করা

  2. C প্রোগ্রামে অ্যারেতে উপাদানগুলোর শেষ অকরেন্স রিলেটিভ অর্ডারে প্রিন্ট করা

  3. C++ প্রোগ্রাম: অ্যারে উপাদানগুলোর গুণফল বের করা

  4. দেওয়া রেঞ্জে অদ্দ ফ্যাক্টরের সংখ্যা বের করার পাইথন প্রোগ্রাম