ধরুন আমাদের একটি সংখ্যা n আছে, সংখ্যার যেকোনো জায়গায় 5 সন্নিবেশ করার মাধ্যমে আমাদের সর্বাধিক সংখ্যাটি পেতে হবে।
সুতরাং, যদি ইনপুট n =834 এর মত হয়, তাহলে আউটপুট হবে 8534।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
যদি n> 0 হয়, তাহলে
-
s :=n স্ট্রিং হিসাবে
-
k :=ফাঁকা স্ট্রিং
-
c :=মিথ্যা
-
প্রতিটি অক্ষরের জন্য i s, do
-
যদি i <5 এবং c মিথ্যা হয়, তাহলে
-
k :=k concatenate "5" concatenate i
-
c :=সত্য
-
-
অন্যথায়,
-
k :=k concatenate i
-
-
-
k পূর্ণসংখ্যা হিসাবে ফেরত দিন
-
-
অন্যথায়,
-
k :=ফাঁকা স্ট্রিং
-
s :=|n| স্ট্রিং হিসাবে
-
c :=মিথ্যা
-
প্রতিটি অক্ষরের জন্য i s, do
-
যদি i> 5 এবং c False এর মত হয়, তাহলে
-
k :=k concatenate "5" concatenate i
-
c :=সত্য
-
-
অন্যথায়,
-
k :=k concatenate i
-
-
-
যদি c মিথ্যা হয়, তাহলে
-
k :=k concatenate "5"
-
-
-
ফেরত (-k)
উদাহরণ
আসুন আরও ভালভাবে বোঝার জন্য নিম্নলিখিত বাস্তবায়ন দেখি
def solve(n): if n > 0: s = str(n) k = "" c = False for i in s: if int(i) < 5 and c == False: k += "5" + i c = True else: k += i return int(k) else: k = "" s = str(abs(n)) c = False for i in s: if int(i) > 5 and c == False: k += "5" + i c = True else: k += i if not c: k += "5" return int("-" + k) n = 834 print(solve(n))
ইনপুট
834
আউটপুট
8534