C++中的回文整数


假设我们有一个非负整数 num,我们需要检查它是不是回文数,但不能使用字符串。

因此,如果输入是 1331,则输出应为真。

要解决此问题,我们将遵循以下步骤 −

  • ret := 0

  • x := num

  • while num > 0, do −

    • d := num mod 10

    • ret := ret * 10

    • ret := ret + d

    • num := num / 10

  • 当 x 与 ret 相同,返回真

让我们看看下面的实现,以便更好地理解 −

例子

 现场演示

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   bool solve(int num) {
      int ret = 0;
      int x = num;
      while(num > 0){
         int d = num % 10;
         ret *= 10;
         ret += d;
         num /= 10;
      }
      return x == ret;
   }
};
main() {
   Solution ob;
   cout << (ob.solve(1331));
}

输入

1331

输出

1

更新于:02-Sep-2020

167 次浏览

开始您的 事业

完成课程后获得认证

开始
广告