এই সমস্যায়, আমাদের শুধুমাত্র অক্ষর এবং বর্ণমালা সমন্বিত একটি স্ট্রিং দেওয়া হয়েছে। আমাদের কাজ হল একটি স্ট্রিং-এ দীর্ঘতম দৈর্ঘ্যের সংখ্যা খুঁজে বের করা।
সমস্যা বর্ণনা: আমাদের সংখ্যার দৈর্ঘ্য খুঁজে বের করতে হবে অর্থাৎ স্ট্রিং-এ পরপর সংখ্যাসূচক অক্ষর।
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট: str =“code001tutorials34124point”
আউটপুট: 34124
ব্যাখ্যা:
স্ট্রিং এর সংখ্যা হল
001 - আকার 3
34124 - আকার 5
সমাধান পদ্ধতি
সমস্যার একটি সহজ সমাধান হ'ল স্টিংটি অতিক্রম করে এবং সংখ্যার দৈর্ঘ্য এবং এর শুরুর সূচক খুঁজে বের করা। আমরা স্ট্রিং-এর প্রতিটি সংখ্যার জন্য স্ট্রিং-এ প্রারম্ভিক অবস্থান এবং অক্ষর গণনা সংরক্ষণ করব। এবং শেষে, নম্বরটি ফেরত দিন।
আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,
উদাহরণ
#include <iostream> using namespace std; string findLongestNumber(string str, int l) { int count = 0, max = 0, maxLenPos = -1, currPos, currLen, maxLen = 0; for (int i = 0; i < l; i++) { currPos = maxLenPos; currLen = maxLen; count = 0; maxLen = 0; if (isdigit(str[i])) maxLenPos = i; while (isdigit(str[i])) { count++; i++; maxLen++; } if (count > max) { max = count; } else { maxLenPos = currPos; maxLen = currLen; } } return (str.substr(maxLenPos, maxLen)); } int main() { string str = "code001tutorials34124point"; int l = str.length(); cout<<"The longest length number in string is "<<findLongestNumber(str, l); return 0; }
আউটপুট
The longest length number in string is 34124