মনে করুন আমাদের কাছে num নামে একটি নন-নেগেটিভ ইন্টিজার আছে। আমাদের যাচাই করতে হবে এটি প্যালিনড্রোম কিনা। স্ট্রিং ব্যবহার না করে সমাধান করতে হবে।
ইনপুট num = 25352 হলে আউটপুট হবে True।
সমাধানের ধাপসমূহ:
- a := 0
- c := num
- num > 0 হলে লুপ চলবে:
- r := num mod 10
- num := num / 10-এর ফ্লোর মান
- a := (10 * a) + r
- যদি a, c-এর সমান হয়, তবে True ফেরত দিন
- অন্যথায় False ফেরত দিন
উদাহরণ
ব্যবহার বোঝার জন্য বাস্তবায়ন:
def solve(num):
a = 0
c = num
while num > 0:
r = num % 10
num = num // 10
a = (10 * a) + r
if a == c:
return True
else:
return False
num = 25352
print(solve(num))
ইনপুট
25352
আউটপুট
True