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

সি++ কোড: 'a' এবং 'b' সমান করে আপডেটেড স্ট্রিং বের করুন

একটি স্ট্রিং S দেওয়া আছে জোড় দৈর্ঘ্য n এর। S-তে শুধু 'a' এবং 'b' আছে। স্ট্রিং এডিট করতে হবে যাতে প্রতিটি ইভেন-লেন্থ প্রিফিক্সে 'a' এবং 'b' সমান সংখ্যক থাকে। অপারেশন: যেকোনো পজিশনের ক্যারেক্টার অন্য টিতে পরিবর্তন করা যায়। আপডেটেড স্ট্রিং রিটার্ন করুন।

উদাহরণ

S="aabbbb" → আউটপুট: "baabab"

সমাধানের ধাপসমূহ

n := S.size()
for i := 0; i < n; i += 2:
    if S[i] == S[i+1]:
        ans++
        S[i] := (S[i]=='a') ? 'b' : 'a'
return S

সি++ কোড উদাহরণ

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

string solve(string S) {
    int n = S.size(), ans = 0;
    for (int i = 0; i < n; i += 2)
        if (S[i] == S[i+1]) {
            ans++;
            S[i] = (S[i]=='a') ? 'b' : 'a';
        }
    return S;
}

int main() {
    string S = "aabbbb";
    cout << solve(S) << endl;
}

ইনপুট

"aabbbb"

আউটপুট

baabab
  1. C++-এ স্ট্রিং-এ কনসোন্যান্ট (Consonant) গণনা (ইটেরেটিভ ও রিকারসিভ)

  2. C++-এ একই প্রতিবেশী বিশিষ্ট অক্ষর গণনা

  3. C++-এ ইংরেজি বর্ণমালার মতো একই পজিশনে থাকা অক্ষর গণনা

  4. একই স্ট্রিং পাওয়ার জন্য ন্যূনতম রোটেশন C++-তে