কম্পিউটার

একটি গ্রিড সম্পূর্ণরূপে অ্যাক্সেসযোগ্য কিনা তা খুঁজে বের করতে C++ কোড


ধরুন, আমাদের একটি গ্রিড দেওয়া হয়েছে যাতে 2টি সারি এবং n কলাম রয়েছে। একটি রোবট গ্রিডে (0, 0) অবস্থানে আছে এবং তার বর্তমান অবস্থানে সংলগ্ন এবং কোণার কক্ষগুলি পরিদর্শন করে (1, n - 1) দেখতে চায়। আমাদেরকে স্ট্রিংগুলির একটি অ্যারেতে গ্রিড দেওয়া হয়, একটি সেল ব্লক করা হয় যদি এটি '#' চিহ্নিত করা হয় এবং এটি '.' চিহ্নিত করা হয় তবে এটি অ্যাক্সেসযোগ্য। রোবট সেল (0, 0) থেকে সেল (1, n - 1) পরিদর্শন করতে পারে কিনা তা আমাদের খুঁজে বের করতে হবে।

সুতরাং, যদি ইনপুট হয় n =4, গ্রিড ={".##.", "...."}, তাহলে আউটপুট সম্ভব হবে৷

পদক্ষেপ

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

flag := 1
for initialize i := 0, when i < n, update (increase i by 1), do:
   if grid[0, i] is same as '#' and grid[1, i] is same as '#',
then:
   flag := 0
if flag is same as 0, then:
   print("Not Possible.")
Otherwise
   print("Possible.")

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <bits/stdc++.h>
using namespace std;
#define N 100
void solve(int n, string grid[]) {
   int flag = 1;
   for(int i = 0; i < n; i++){
      if(grid[0].at(i) == '#' && grid[1].at(i) == '#'){
         flag = 0;
      }
   }
   if (flag == 0)
      cout<<"Not Possible.";
   else
      cout<<"Possible.";
}
int main() {
   int n = 4;
   string grid[] = {".##.", "...."};
   solve(n, grid);
   return 0;
}

ইনপুট

4, {".##.", "...."}

আউটপুট

Possible.

  1. ব্যাটারি কম্বো সংখ্যা খুঁজে বের করতে C++ কোড

  2. একটি গ্রিডে সমান-সংখ্যাযুক্ত কক্ষের সংখ্যা সর্বাধিক করার জন্য অপারেশনের সংখ্যা খুঁজে বের করার জন্য C++ প্রোগ্রাম

  3. একটি গ্রিডে আলোকিত কোষের সংখ্যা খুঁজে বের করার জন্য C++ প্রোগ্রাম

  4. একটি পাথ তৈরি করতে একটি গ্রিডে ব্লক করার জন্য সেলের সংখ্যা খুঁজে বের করার জন্য C++ প্রোগ্রাম