কম্পিউটার

C++ প্রোগ্রাম ভালো স্ট্রিং পেতে অক্ষরের সংখ্যা গণনা করতে হবে


ধরুন আমাদের একটি স্ট্রিং S. S-এ S-এ দুটি ধরনের অক্ষর রয়েছে, 'x' এবং 'a'। S এর কয়েকটি অক্ষর অপসারণের পরে আমাদেরকে গুনতে হবে যে দীর্ঘতম স্ট্রিংটি অবশিষ্ট থাকবে যাতে এটি ভাল স্ট্রিং হয়ে যায়। একটি স্ট্রিং ভাল যদি এর দৈর্ঘ্যের অর্ধেকের বেশি 'a' অক্ষর দিয়ে পূর্ণ থাকে।

সুতরাং, যদি ইনপুটটি S ="xaxxxxa" এর মত হয়, তাহলে আউটপুট হবে 3, কারণ আমরা যদি 4 'x' সরিয়ে দেই, স্ট্রিংটি হবে "xaa" এবং এটি একটি ভাল স্ট্রিং যার দৈর্ঘ্য 3।

পদক্ষেপ

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

x := 2 * count the number of 'a' in S
n := size of S
return minimum of n and x

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <bits/stdc++.h>
using namespace std;

int solve(string S) {
   int x = 2 * count(S.begin(), S.end(), 'a') - 1;
   int n = S.size();
   return min(n, x);
}
int main() {
   string S = "xaxxxxa";
   cout << solve(S) << endl;
}

ইনপুট

"xaxxxxa"

আউটপুট

3

  1. যোগফল k পেতে প্রয়োজনীয় ন্যূনতম কয়েনের সংখ্যা গণনা করার জন্য C++ প্রোগ্রাম

  2. C++ প্রোগ্রাম ন্যূনতম সংখ্যক ক্রিয়াকলাপ গণনা করে যা সংখ্যা n থেকে 1 করতে হবে

  3. প্রতিটি সিঁড়িতে সিঁড়ির সংখ্যা এবং ধাপের সংখ্যা গণনা করার জন্য C++ প্রোগ্রাম

  4. ডোডেকাগনের সংখ্যা গণনা করার জন্য C++ প্রোগ্রাম আমরা d এর আকার তৈরি করতে পারি