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

বাইনারি স্ট্রিং থেকে "01" বা "10" ডিলিট করে সেটি "01" বা "10" মুক্ত করা C++ প্রোগ্রামে


এই টিউটোরিয়ালে আমরা একটি প্রোগ্রাম লিখব যা বাইনারি স্ট্রিং থেকে জোড়া (01 বা 10) কতবার ডিলিট করতে হবে সেটি "01" এবং "10" মুক্ত করতে তা বের করবে। একটি উদাহরণ দেখি।

ইনপুট − 101010001

আউটপুট − 4

উপরের উদাহরণে, আমাদের বাইনারি স্ট্রিংকে "01" এবং "10" মুক্ত করতে মোট ৪টি জোড়া ডিলিট করতে হবে।

সকল জোড়া ডিলিট করার পর ফলাফল স্ট্রিং হবে 0।

আমাদের বাইনারি স্ট্রিং থেকে সব 01 এবং 10 জোড়া ডিলিট করতে হবে। তাই ডিলিট করার মোট জোড়ার সংখ্যা হবে count(1) এবং count(0)-এর ন্যূনতম।

সমস্যা সমাধানের ধাপগুলো:

  • বাইনারি স্ট্রিং ইনিশিয়ালাইজ করুন।

  • শূন্য এবং একের গণনা বের করুন।

  • শূন্য এবং একের গণনার মধ্যে ন্যূনতমটি প্রিন্ট করুন।

উদাহরণ

নিচে কোডটি দেওয়া হলো:

#include <bits/stdc++.h> using namespace std; int findMinimumNumberOfDeletions(string str, int len) {    int zeroes_count = 0, ones_count = 0;    // counting zeroes and ones    for (int i = 0; i < len; i++) {       if (str[i] == '0') {          zeroes_count++;       }       else {          ones_count++;       }    }    return min(zeroes_count, ones_count); } int main() {    string str = "101010001";    int len = str.length();    cout << findMinimumNumberOfDeletions(str, len) << endl;    return 0; }

আউটপুট

উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:

4

উপসংহার

টিউটোরিয়াল সম্পর্কে কোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানান।


  1. স্ট্রিং থেকে বাইনারি ট্রি নির্মাণ C++-এ

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

  3. বাইনারি সার্চ C++ প্রোগ্রামে

  4. C++ প্রোগ্রাম: স্ট্রিং থেকে স্পেস রিমুভ করা