কম্পিউটার

সমস্ত সম্ভাব্য স্ট্রিং প্রিন্ট করুন যা C++ এ স্পেস রেখে তৈরি করা যেতে পারে


এই সমস্যায়, আমাদের একটি স্ট্রিং দেওয়া হয়েছে এবং স্ট্রিংটির অক্ষরগুলির মধ্যে স্থান রেখে এই স্ট্রিং ব্যবহার করে তৈরি করা যেতে পারে এমন সমস্ত স্ট্রিং প্রিন্ট করতে হবে৷

বিষয়টি আরও ভালোভাবে বোঝার জন্য একটি উদাহরণ নেওয়া যাক -

Input: string = ‘XYZ’
Output: XYZ, XY Z, X YZ, X Y Z

এই সমস্যাটি সমাধান করার জন্য, আমাদের সম্ভাব্য সমস্ত উপায় খুঁজে বের করতে হবে যাতে আমরা স্ট্রিংটিতে স্থান রাখতে পারি। এই জন্য আমরা recursion ব্যবহার করব. এতে, আমরা একটি করে স্পেস স্থাপন করব এবং একটি নতুন স্ট্রিং তৈরি করব।

উদাহরণ

#include <iostream>
#include <cstring>
using namespace std;
void printPattern(char str[], char buff[], int i, int j, int n){
   if (i==n){
      buff[j] = '\0';
      cout << buff << endl;
      return;
   }
   buff[j] = str[i];
   printPattern(str, buff, i+1, j+1, n);
   buff[j] = ' ';
   buff[j+1] = str[i];
   printPattern(str, buff, i+1, j+2, n);
}
int main() {
   char *str = "XYZ";
   int n = strlen(str);
   char buf[2*n];
   buf[0] = str[0];
   cout<<"The string generated using space are :\n";
   printPattern(str, buf, 1, 1, n);
   return 0;
}

আউটপুট

স্থান ব্যবহার করে তৈরি করা স্ট্রিং হল −

XYZ
XY Z
X YZ
X Y Z

  1. C++ এ একটি স্ট্রিংয়ের সমস্ত প্যালিনড্রোমিক পার্টিশন প্রিন্ট করুন

  2. C++-এ অক্ষরের পুনরাবৃত্তি সহ সমস্ত স্থানান্তর প্রিন্ট করুন

  3. C++ এ অ্যারের অক্ষর ব্যবহার করে সম্ভব এমন সব বৈধ শব্দ প্রিন্ট করুন

  4. C++ এ একটি অভিধানে নির্দিষ্ট প্যাটার্নের সাথে মেলে এমন সমস্ত স্ট্রিং খুঁজুন