কম্পিউটার টিউটোরিয়াল

পাইথনে ইন্টিজার রিভার্স (Reverse Integer)

একটি ৩২-বিট সাইনড ইন্টিজার দেওয়া থাকে। এর ডিজিটগুলো রিভার্স করতে হবে। নেগেটিভ হলে সাইন রেখে ডিজিট রিভার্স। ৩২-বিট রেঞ্জ বাইরে হলে ০ রিটার্ন।

সমাধানের পদ্ধতি

  1. সংখ্যাকে স্ট্রিংে রূপান্তর করুন।
  2. যদি প্রথম ক্যারেক্টার '-' হয়, বাকি পার্ট রিভার্স করে সাইন যোগ করুন।
  3. অন্যথায় পুরো স্ট্রিং রিভার্স করুন।
  4. ইন্টিজারে কনভার্ট করে ৩২-বিট রেঞ্জ চেক করুন।

উদাহরণ কোড

class Solution(object):
    def reverse(self, x):
        x = str(x)
        if x[0] == '-':
            a = int('-' + x[-1:0:-1])
            if a >= -2147483648 and a <= 2147483647:
                return a
            else:
                return 0
        else:
            a = int(x[::-1])
            if a >= -2147483648 and a <= 2147483647:
                return a
            else:
                return 0

ob1 = Solution()
print(ob1.reverse(-425))

ইনপুট

print(ob1.reverse(-425))

আউটপুট

-524
  1. পাইথনে ইন্টিজার রিভার্স (Reverse Integer)

  2. পাইথনে ফ্যাক্টোরিয়াল (factorial) বের করার তিনটি পদ্ধতি

  3. পাইথনে bin() ফাংশন

  4. পাইথনে ধনাত্মক পূর্ণসংখ্যার বিট উল্টিয়ে ফেলার প্রোগ্রাম