একটি স্ট্রিং S (সব ছোট হাতের অক্ষর) দেওয়া আছে। দৈর্ঘ্য ৪-এর সাবস্ট্রিংগুলোতে যেগুলোর ক্যারেক্টার রি-অ্যারেঞ্জ (rearrange) করে "bird" শব্দটা বানানো যায়, তাদের সংখ্যা গুনতে হবে।
উদাহরণ
ইনপুট: "birdb"
আউটপুট: ২ (সাবস্ট্রিং: "bird" এবং "irdb")
সমাধানের পদ্ধতি
- স্ট্রিং-এ দৈর্ঘ্য ৪ এর সব সাবস্ট্রিং চেক করা হয় (i = 0 থেকে len-4)।
- প্রতিটি সাবস্ট্রিং-এ 'b', 'i', 'r', 'd' -র ফ্রিকোয়েন্সি ১ করে আছে কিনা চেক করা হয়।
- হলে কাউন্ট বাড়ানো হয়।
পাইথন কোড
def number_of_occurrence(s):
cnt = 0
for i in range(len(s) - 3):
bird = [0, 0, 0, 0] # b, i, r, d
for j in range(i, i + 4):
if s[j] == 'b':
bird[0] += 1
elif s[j] == 'i':
bird[1] += 1
elif s[j] == 'r':
bird[2] += 1
elif s[j] == 'd':
bird[3] += 1
if bird == [1, 1, 1, 1]:
cnt += 1
return cnt
s = "birdb"
print(number_of_occurrence(s))
ইনপুট
"birdb"
আউটপুট
2