কম্পিউটার

C++ এ একই স্ট্রিং পেতে ন্যূনতম ঘূর্ণন প্রয়োজন


সমস্যা বিবৃতি

একটি স্ট্রিং দেওয়া, একই স্ট্রিং পেতে আমাদের ন্যূনতম সংখ্যক ঘূর্ণন প্রয়োজন

উদাহরণ

যদি ইনপুট স্ট্রিং "bbbbb" হয় তাহলে ন্যূনতম 1টি ঘূর্ণন প্রয়োজন

অ্যালগরিদম

<পূর্ব>1. ইনিশিয়ালাইজ ফলাফল =02। একটি অস্থায়ী স্ট্রিং তৈরি করুন যা নিজের সাথে সংযুক্ত মূল স্ট্রিংয়ের সমান।3। দ্বিতীয় অক্ষর থেকে শুরু হওয়া অস্থায়ী স্ট্রিংয়ের আকারের অস্থায়ী স্ট্রিংয়ের সাবস্ট্রিং নিন, অর্থাৎ সূচী 14 থেকে শুরু করুন। কাউন্টার5 বৃদ্ধি করুন। সাবস্ট্রিংটি আসল স্ট্রিংয়ের সমান হয় কিনা তা পরীক্ষা করুন। যদি হ্যাঁ, তাহলে লুপ ভাঙ্গুন। অন্যথায় ধাপ 2 এ যান এবং পরবর্তী সূচী থেকে এটি পুনরাবৃত্তি করুন

উদাহরণ

#include নেমস্পেস ব্যবহার করে std;int getRotationCount(string str) { string temp =str + str; int n =str.length(); for (int i =1; i <=n; ++i) { string sub =temp.substr(i, str.size()); if (str ==sub) { রিটার্ন i; } } n;} int main() { string str ="bbbbb"; cout <<"ঘূর্ণন গণনা =" < 

যখন আপনি উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট তৈরি করে

আউটপুট

ঘূর্ণন গণনা =1

  1. একটি স্ট্রিং প্রিন্ট করার জন্য ডায়াল রোটেশনের সংখ্যা খুঁজে পেতে C++ কোড

  2. শত্রুকে পরাস্ত করার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক অপারেশন খুঁজে বের করার জন্য C++ প্রোগ্রাম

  3. প্রদত্ত অ্যারে থেকে প্রথম স্ট্রিং যার বিপরীতটিও C++ এ একই অ্যারেতে উপস্থিত রয়েছে

  4. C++ এ প্রতিপক্ষকে ধরার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক ধাপ খুঁজে বের করার প্রোগ্রাম