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

C++-এ প্যালিনড্রোম পূর্ণসংখ্যা: স্ট্রিং ছাড়া যাচাই

একটি নন-নেগেটিভ পূর্ণসংখ্যা দেওয়া আছে। স্ট্রিং-এ কনভার্ট না করে এটি প্যালিনড্রোম কিনা তা যাচাই করুন।

উদাহরণ

ইনপুট: 1331

আউটপুট: true (1)

অ্যালগরিদম

  1. ret = 0, x = num রাখুন।
  2. while (num > 0):
    • d = num % 10 (শেষ অঙ্ক)
    • ret = ret * 10 + d (রিভার্স তৈরি)
    • num /= 10
  3. x == ret হলে প্যালিনড্রোম।

C++ বাস্তবায়ন

#include <bits/stdc++.h>
using namespace std;

class Solution {
public:
    bool solve(int num) {
        int ret = 0, x = num;
        while (num > 0) {
            int d = num % 10;
            ret = ret * 10 + d;
            num /= 10;
        }
        return x == ret;
    }
};

int main() {
    Solution ob;
    cout << ob.solve(1331);
    return 0;
}

দ্রষ্টব্য

  • নেগেটিভ সংখ্যার জন্য false (কারণ '-' চিহ্ন থাকে)
  • ওভারফ্লো এড়াতে long long ব্যবহার করা ভালো
  • সময় জটিলতা: O(log₁₀ n)
  1. C++-এ জাম্প গেম V (Jump Game V)

  2. C++-এ ইন্টিজার ব্রেক

  3. সি++-এ প্রাইম প্যালিনড্রোম (Prime Palindrome)

  4. প্যালিনড্রোম (Palindrome) নম্বর চেক করার C++ প্রোগ্রাম