কম্পিউটার

সাবস্ট্রিংগুলি গণনা করুন যা X অক্ষর দিয়ে শুরু হয় এবং C++ এ Y অক্ষর দিয়ে শেষ হয়


আমরা স্ট্রিং str দেওয়া হয়. লক্ষ্য হল str এর সাবস্ট্রিংগুলির সংখ্যা গণনা করা যার শুরুর অক্ষর X অক্ষরের মতো এবং শেষের অক্ষরটি Y অক্ষরের মতো। উদাহরণস্বরূপ, যদি ইনপুট হয় “আর্ট্যাক্ট” এবং X='a' এবং Y='t', সাবস্ট্রিং হবে “আর্ট”, “অ্যাক্ট”, “আর্ট্যাক্ট”। গণনা 3।

আসুন উদাহরণ দিয়ে বুঝতে পারি।

ইনপুট − str="abcccdef" X='a' Y='c'

আউটপুট −সাবস্ট্রিংগুলির সংখ্যা যা X অক্ষর দিয়ে শুরু হয় এবং Y দিয়ে শেষ হয় −3

ব্যাখ্যা − সাবস্ট্রিং হবে

“abc”, “abcc”, “abccc”. Total 3.

ইনপুট − str="Temest" X='t' Y='t'

আউটপুট − সাবস্ট্রিংগুলির সংখ্যা যা X অক্ষর দিয়ে শুরু হয় এবং Y দিয়ে শেষ হয় −3

ব্যাখ্যা − সাবস্ট্রিং হবে −

“t” , “tempest” , “t”. Total 3

নিচের প্রোগ্রামে ব্যবহৃত পদ্ধতিটি নিম্নরূপ

আমরা X এর স্ট্রিং এবং ইনক্রিমেন্ট গণনা অতিক্রম করব। যদি Y এর সম্মুখীন হয় তাহলে X দিয়ে শুরু হওয়া এবং Y দিয়ে শেষ হওয়া স্ট্রিংগুলির সংখ্যায় X গণনা যোগ করুন।

  • স্ট্রিং str নিন. str.size().

    হিসাবে দৈর্ঘ্য গণনা করুন
  • ফাংশন X_Y(স্ট্রিং str, int length, char X, char Y) স্ট্রিং str, অক্ষর X, Y নেয় এবং str এর সাবস্ট্রিংগুলির গণনা প্রদান করে যা X দিয়ে শুরু হয় এবং Y দিয়ে শেষ হয়৷

  • 0 হিসাবে প্রাথমিক গণনা নিন।

  • str.

    এ অক্ষর X এর গণনা হিসাবে x_total নিন
  • লুপের জন্য ব্যবহার করে ট্রাভার্স str. i=0 থেকে i<দৈর্ঘ্য।

  • str[i]==X হলে, str (x_total++) এ X-এর সংখ্যা বৃদ্ধি।

  • str[i]==Y হলে, গণনার জন্য x_total যোগ করুন। X না থাকলে x_total হবে 0, অন্যথায়, Y হল সাবস্ট্রিং এর শেষ অক্ষর যা X থেকে শুরু হয়েছে।

  • পছন্দসই ফলাফল হিসাবে রিটার্ন গণনা করুন।

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int X_Y(string str, int length, char X, char Y){
   int count = 0;
   int x_total = 0;
   for (int i = 0; i < length; i++){
      if(str[i] == X){
         x_total++;
      }
      if (str[i] == Y){
         count = count + x_total;
      }
   }
   return count;
}
int main(){
   string str = "defaabbcchhkl";
   int length = str.size();
   char X = 'd';
   char Y = 'a';
   cout<<"Count of substrings that starts with character X and ends with character Y are: "<<X_Y(str, length, X, Y);
   return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
Count of substrings that starts with character X and ends with character Y are: 2

  1. C++ এ Bitwise এবং ODD সংখ্যা হিসাবে জোড়া গণনা করুন

  2. C++ এ বড় হাতের অক্ষর, ছোট হাতের অক্ষর, বিশেষ অক্ষর এবং সংখ্যাসূচক মান গণনা করুন

  3. C++ এ বাইনারি সাবস্ট্রিং গণনা করুন

  4. DFA তৈরির প্রোগ্রাম যা C++ এ ইনপুট (a, b) থেকে 'a' দিয়ে শুরু এবং শেষ হয়