ধরুন আমাদের একটি ধনাত্মক পূর্ণসংখ্যা N আছে, আমরা সংখ্যাগুলিকে যেকোনো ক্রমে (মূল ক্রম সহ) পুনর্বিন্যাস করি যাতে অগ্রণী সংখ্যাটি অ-শূন্য হয়। আমাদের পরীক্ষা করতে হবে যে আমরা এটি এমনভাবে করতে পারি যে ফলাফল সংখ্যাটি 2 এর একটি শক্তি।
সুতরাং, যদি ইনপুটটি N =812 এর মত হয়, তাহলে আউটপুট হবে True
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
i:=1
-
যখন আমি<=1000000000, কর
-
s:=i একটি স্ট্রিং হিসাবে
-
s:=s-এর অক্ষর সাজান
-
t:=n একটি স্ট্রিং হিসাবে
-
t:=t
এর অক্ষর সাজান -
যদি s হয় t এর মতো, তাহলে
-
রিটার্ন ট্রু
-
-
i:=i*2
-
-
রিটার্ন ফলস
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
def solve(n): i=1 while i<=1000000000: s=str(i) s=''.join(sorted(s)) t=str(n) t=''.join(sorted(t)) if s==t: return True i=i*2 return False N = 812 print(solve(N))
ইনপুট
812
আউটপুট
True