ধরুন আমাদের n সংখ্যা সহ একটি স্ট্রিং S আছে। ঠিক 11 সংখ্যার একটি নম্বর হল একটি টেলিফোন নম্বর যদি এটি '8' দিয়ে শুরু হয়। একটি অপারেশনে, আমরা S থেকে একটি ডিজিট মুছে ফেলতে পারি। আমরা স্ট্রিংটিকে একটি বৈধ ফোন নম্বর করতে পারি কিনা তা পরীক্ষা করতে হবে।
সুতরাং, যদি ইনপুটটি S ="5818005553985" এর মত হয়, তাহলে আউটপুটটি True হবে, কারণ আমরা 11টি অক্ষর দিয়ে "8005553985" স্ট্রিং তৈরি করতে পারি এবং প্রথম সংখ্যাটি 8।
পদক্ষেপ
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
m := size of S insert '8' at the end of S if if location of 8 <= (m - 11), then: return true return false
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; bool solve(string S){ int m = S.size(); S.push_back('8'); if ((int(S.find('8')) <= (m - 11))) return true; return false; } int main(){ string S = "5818005553985"; cout << solve(S) << endl; }
ইনপুট
"5818005553985"
আউটপুট
1