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

C++-এ প্রথম এবং শেষ উপাদান সমান সাব-অ্যারের সর্বোচ্চ দৈর্ঘ্য


এই সমস্যায়, আমাদের একটি ক্যারেক্টার অ্যারে দেওয়া আছে। আমাদের কাজ হলো প্রথম এবং শেষ উপাদান সমান সাব-অ্যারের সর্বোচ্চ দৈর্ঘ্য প্রিন্ট করার প্রোগ্রাম তৈরি করা।

উদাহরণ দিয়ে সমস্যা বুঝি −

ইনপুট − অ্যারে = {‘t’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’, ‘s’, ‘p’, ‘o’, ‘i’, ‘n’, ‘t’ }

আউটপুট − 14

ব্যাখ্যা −

সাব-অ্যারে {‘t’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’, ‘s’, ‘p’, ‘o’, ‘i’, ‘n’, ‘t’ } t দিয়ে শুরু এবং t দিয়ে শেষ হয়।

এই সমস্যা সমাধানের জন্য, আমরা অ্যারেতে একটি ক্যারেক্টারের প্রথম এবং শেষ অকারেন্স খুঁজে বের করি এবং নিচের সূত্র ব্যবহার করি −

সাব-অ্যারে দৈর্ঘ্য = lastOccurrence - firstOccurrence + 1

আমরা সকল ফলাফলের মধ্যে সর্বোচ্চ দৈর্ঘ্য বের করব।

উদাহরণ দিয়ে সমাধান বুঝি,

অ্যারে = {a, b , a , c , b, a}

উপাদান a, প্রথম অকারেন্স ইনডেক্স ০, শেষ অকারেন্স ইনডেক্স ৫

সাব-অ্যারে দৈর্ঘ্য = 5 - 0 + 1= 6

maxLength = 6

উপাদান b, প্রথম অকারেন্স ইনডেক্স ১, শেষ অকারেন্স ইনডেক্স ৪

সাব-অ্যারে দৈর্ঘ্য = 4 - 1 + 1 = 4

maxLength = 6

উদাহরণ

প্রথম এবং শেষ উপাদান সমান সাব-অ্যারের সর্বোচ্চ দৈর্ঘ্য প্রিন্ট করার প্রোগ্রাম −

#include <iostream> using namespace std; int maxSubArrLength(string arr, int n){    int firstOccurrence, lastOccurrence = -1;    int maxlength = 0;    char ch;    for (int i = 0; i < n; i++){       ch = arr[i];       firstOccurrence = lastOccurrence = i;       for(int j = i; j<n; j++){          if(arr[j] == ch)             lastOccurrence = j;       }       maxlength = max(maxlength, (lastOccurrence - firstOccurrence + 1));    }    return maxlength; } int main(){    string arr = "tutorialsPoint";    int n = arr.length();    cout<<"The maximum length of subarray whose first and last elements are same is "<<maxSubArrLength(arr, n);    return 0; }

আউটপুট

The maximum length of subarray whose first and last elements are same is 14

  1. সি++ প্রোগ্রাম: প্রথম অ্যারেতে থাকা কিন্তু দ্বিতীয় অ্যারেতে নেই এমন উপাদানগুলো খুঁজে বের করা

  2. C++ ব্যবহার করে AP-এ একটি সংখ্যা আছে কিনা চেক করা

  3. C++-এ C দ্বারা বিভাজ্য এবং [A, B] রেঞ্জের মধ্যে সর্বোচ্চ ধনাত্মক পূর্ণসংখ্যা

  4. C++ প্রোগ্রাম: স্ট্রিং-এর প্রথম ও শেষ ক্যারেক্টার সমান কিনা যাচাই করা