কম্পিউটার

C++ এ মেটা স্ট্রিংস (একটি স্ট্রিং অদলবদল করার পরে দুটি স্ট্রিং একই হতে পারে কিনা তা পরীক্ষা করুন)


এই বিভাগে, আমরা দেখব কিভাবে দুটি স্ট্রিং মেটা স্ট্রিং কিনা তা পরীক্ষা করা যায়। মেটা স্ট্রিং হল সেই স্ট্রিং যা অনেক বেশি একই রকম। যদি আমরা একটি স্ট্রিং এ দুটি উপাদান অদলবদল করি, তাহলে এটি অন্য স্ট্রিং এর সাথে মিলে যাবে। ধরুন দুটি স্ট্রিং হল "HELLO" এবং "OELLH", তাহলে সেগুলি হল মেটা স্ট্রিং৷

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

পদক্ষেপ

  • যদি উভয় স্ট্রিং ভিন্ন দৈর্ঘ্যের হয়, তাহলে মিথ্যা ফেরত দিন

  • অন্যথায় অনেকগুলি অক্ষর খুঁজুন, যেগুলি মেলেনি, অ-মেলা অক্ষরগুলির সূচীও সংরক্ষণ করুন

  • যদি গণনা 2-এর বেশি হয়, তাহলে মিথ্যা ফেরত দিন

  • অন্যথায় এই অক্ষরগুলিকে অদলবদল করুন, তারপর যদি দুটি স্ট্রিং একই হয়, তবে সত্য ফেরত দিন, অন্যথায় মিথ্যা।

উদাহরণ

#include <iostream>
using namespace std;
bool areTheyMetaString(string s1, string s2) {
   int s1_len = s1.length();
   int s2_len = s2.length();
   if (s1_len != s2_len)
   return false;
   int prev = -1, curr = -1;
   int count = 0;
   for (int i=0; i<s1_len; i++) {
      if (s1[i] != s2[i]) {
         count++; // number of unmatched characters
         if (count > 2)
         return false;
         prev = curr;
         curr = i;
      }
   }
   return (count == 2 && s1[prev] == s2[curr] && s1[curr] == s2[prev]);
}
int main() {
   string s1 = "HELLO", s2 = "OELLH";
   if(areTheyMetaString(s1, s2)){
      cout << "Meta Strings";
   } else {
      cout << "Not Meta Strings";
   }
}

আউটপুট

Meta Strings

  1. C++ এ দুটি বাইনারি স্ট্রিং যোগ করার জন্য প্রোগ্রাম

  2. একটি স্ট্রিং অদলবদল পাইথন ব্যবহার করে স্ট্রিং সমান করতে পারে কিনা তা পরীক্ষা করার জন্য প্রোগ্রাম

  3. পাইথনে একটি অপসারণের মাধ্যমে সমস্ত অক্ষরের ফ্রিকোয়েন্সি একই হতে পারে কিনা তা পরীক্ষা করুন

  4. পাইথনে প্রদত্ত স্ট্রিংগুলিকে সংযুক্ত করার পরে প্রদত্ত স্ট্রিং তৈরি করা যায় কিনা তা পরীক্ষা করুন