ধরুন এর একটি স্ট্রিং অভিধান আছে, অভিধানটি প্রাচীন মহাকাশচারীদের অভিধানের একটি আংশিক লেক্সিকোগ্রাফিক ক্রম উপস্থাপন করছে৷ সুতরাং, যদি আমাদের একটি স্ট্রিং s থাকে, তাহলে আমাদের পরীক্ষা করতে হবে যে এটি এই প্রাচীন মহাকাশচারী অভিধান অনুসারে একটি অভিধানিকভাবে সাজানো স্ট্রিং কিনা।
সুতরাং, যদি ইনপুটটি অভিধান ="bdc", s ="bbbb h ddd i cccc" এর মত হয়, তাহলে আউটপুট হবে True
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
l :=astro_dict এর আকার
-
যদি l 0 এর সমান হয়, তাহলে
-
রিটার্ন ট্রু
-
-
i :=0
-
প্রতিটি অক্ষরের জন্য c s, do
-
যদি c astro_dict এ, তাহলে
-
যখন i
-
i :=i + 1
-
-
যদি i>=l বা astro_dict[i] c না হয়, তাহলে
-
রিটার্ন ফলস
-
-
-
-
রিটার্ন ট্রু
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution:
def solve(self, astro_dict, s):
l = len(astro_dict)
if l == 0:
return True
i = 0
for c in s:
if c in astro_dict:
while i < l and astro_dict[i] != c:
i += 1
if i >= l or astro_dict[i] != c:
return False
return True
ob = Solution()
print(ob.solve("bdc","bbbb h ddd i cccc")) ইনপুট
"bdc","bbbb h ddd i cccc"
আউটপুট
True