আসুন প্রথমে আমাদের প্রাথমিক স্ট্রিং ঘোষণা করি এবং এর দৈর্ঘ্য গণনা করি এবং তাদের deleteSubstr(str,length) ফাংশনে প্রেরণ করি।
string str = "01010110011"; int length = str.length(); cout <<"Count of substring deletion"<< deleteSubstr(str, length);
DeleteSubstr(string str, int length) ফাংশনের ভিতরে I দৈর্ঘ্যের চেয়ে কম না হওয়া পর্যন্ত লুপ চলে এবং যথাক্রমে 0 এবং 1 এর এনকাউন্টারে count_0 এবং count_1 ভেরিয়েবল বৃদ্ধি করে। ফাংশনটি তারপর কাউন্ট_0 এবং কাউন্ট_1 এর সর্বনিম্ন মান প্রদান করে।
int deleteSubstr(string str, int length){ int count_0 = 0, count_1 = 0; for (int i = 0; i < length; i++) { if (str[i] == '0') count_0++; else count_1++; } return min(count_0, count_1); }
উদাহরণ
আসুন আমরা বাইনারি স্ট্রিং-এ “01” বা “10”-কে “01” বা “10”-
থেকে মুক্ত করার জন্য নিচের বাস্তবায়ন দেখি।#include <iostream> using namespace std; int deleteSubstr(string str, int length){ int count_0 = 0, count_1 = 0; for (int i = 0; i < length; i++) { if (str[i] == '0') count_0++; else count_1++; } return min(count_0, count_1); } int main(){ string str = "01010110011"; int length = str.length(); cout <<"Count of substring deletion "<< deleteSubstr(str, length); return 0; }
আউটপুট
উপরের কোডটি নিম্নলিখিত আউটপুট −
তৈরি করবেCount of substring deletion 5