ধরুন, আমাদের একটি স্ট্রিং দেওয়া হয়েছে যাতে শুধুমাত্র ছোট হাতের অক্ষর রয়েছে। আমাদের কাজ হল প্রদত্ত স্ট্রিংটিতে একটি সাবস্ট্রিং আছে কিনা তা খুঁজে বের করা যা একটি প্যালিনড্রোম এবং সমান দৈর্ঘ্যের। যদি পাওয়া যায়, আমরা 1 ফেরত দিই অন্যথায় 0.
সুতরাং, ইনপুট যদি "বিকালের" মত হয়, তাহলে আউটপুট সত্য হবে৷
৷এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- আরম্ভ করার জন্য x :=0, যখন x <স্ট্রিং এর দৈর্ঘ্য - 1, x কে 1 দ্বারা বাড়ান, −
- করুন
- যদি স্ট্রিং[x] স্ট্রিং[x + 1] এর মতো হয়, তাহলে:
- সত্য ফেরত দিন
- যদি স্ট্রিং[x] স্ট্রিং[x + 1] এর মতো হয়, তাহলে:
- মিথ্যে ফেরত দিন
উদাহরণ (C++)
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; bool solve(string string) { for (int x = 0; x < string.length() - 1; x++) { if (string[x] == string[x + 1]) return true; } return false; } int main() { cout<<solve("afternoon") <<endl; }
ইনপুট
"afternoon"
আউটপুট
1