আমাদের একটি n x n আকারের ম্যাট্রিক্স এবং একটি পূর্ণসংখ্যা x দেওয়া আছে। ম্যাট্রিক্সের উপাদানগুলো সর্টেড ক্রমে আছে। কাজ হল ম্যাট্রিক্সে x-র চেয়ে ছোট বা সমান উপাদানগুলোর সংখ্যা বের করা।
উদাহরণ
ইনপুট: matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, X = 5
আউটপুট: 5 (উপাদানগুলো: ১, ২, ৩, ৪, ৫)
ইনপুট: X = 0 → আউটপুট: 0 (কোনো উপাদান ০-র চেয়ে ছোট বা সমান নেই)
সমাধানের পদ্ধতি
- ম্যাট্রিক্সের সাইজ ইনপুট নিন।
- দুটি নেস্টেড লুপ দিয়ে ম্যাট্রিক্স ট্রাভার্স করুন।
- প্রতিটি উপাদান
x-র চেয়ে ছোট বা সমান কিনা চেক করুন। - হ্যাঁ হলে কাউন্ট বাড়ান।
- মোট কাউন্ট রিটার্ন করুন।
প্রোগ্রাম উদাহরণ
#include <bits/stdc++.h>
using namespace std;
#define SIZE 3
int count(int matrix[SIZE][SIZE], int x) {
int count = 0;
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
if (matrix[i][j] <= x)
count++;
}
}
return count;
}
int main() {
int matrix[SIZE][SIZE] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
int x = 5;
cout << "Count of elements smaller than or equal to x in a sorted matrix is: "
<< count(matrix, x);
return 0;
}
আউটপুট
Count of elements smaller than or equal to x in a sorted matrix is: 5