কম্পিউটার

C++ এ একটি ম্যাট্রিক্সে গহ্বরের সংখ্যা খুঁজুন


একটি ম্যাট্রিক্স দেওয়া আছে বিবেচনা করুন. আমাদের ম্যাট্রিক্সে গহ্বরের সংখ্যা খুঁজে বের করতে হবে। একটি উপাদানকে গহ্বর হিসাবে চিহ্নিত করা হয় যখন এটিকে ঘিরে থাকা অন্যান্য উপাদানগুলি উপাদানের চেয়ে বড় হয়। তাই ম্যাট্রিক্স যদি −

এর মত হয়
4 5 6
7 1 5
4 5 6

সুতরাং আউটপুট হল 1.

আমরা কেবল আশেপাশের উপাদানগুলি পরীক্ষা করি এবং সিদ্ধান্ত গ্রহণ করি৷

উদাহরণ

#include<iostream>
#define MAX 100
using namespace std;
int numberOfCavities(int array[][MAX], int n) {
   int arr[n + 2][n + 2];
   int count = 0;
   for (int i = 0; i < n + 2; i++) {
      for (int j = 0; j < n + 2; j++) {
         if ((i == 0) || (j == 0) || (i == n + 1) || (j == n + 1))
            arr[i][j] = INT_MAX;
         else
            arr[i][j] = array[i - 1][j - 1];
      }
   }
   for (int i = 1; i <= n; i++) {
      for (int j = 1; j <= n; j++) {
         if ((arr[i][j] < arr[i - 1][j]) && (arr[i][j] < arr[i + 1][j]) && (arr[i][j] < arr[i][j - 1])
            && (arr[i][j] < arr[i][j + 1]) && (arr[i][j] < arr[i - 1][j - 1]) && (arr[i][j] < arr[i + 1][j + 1])
            && (arr[i][j] < arr[i - 1][j + 1]) && (arr[i][j] < arr[i + 1][j - 1])) count++;
      }
   }
   return count;
}
int main() {
   int a[][MAX] = { { 4, 5, 6 }, { 7, 1, 5 }, { 4, 5, 6 }};
   int n = 3;
   cout << "Number of cavities: " << numberOfCavities(a, n);
}

আউটপুট

Number of cavities: 1

  1. C++ এ পাটিগণিত সংখ্যা

  2. C++ এ মূলদ সংখ্যার LCM খুঁজুন

  3. একটি গ্রাফ ম্যাট্রিক্সের বিপরীত অনুসন্ধান করার জন্য C++ প্রোগ্রাম

  4. C++ এ CHAR_BIT