3783.整数的镜像距离:数学

【LetMeFly】3783.整数的镜像距离:数学

力扣题目链接:https://leetcode.cn/problems/mirror-distance-of-an-integer/

给你一个整数 n

定义它的 镜像距离 为:abs(n - reverse(n))​​​​​​​,其中 reverse(n) 表示将 n 的数字反转后形成的整数。

返回表示 n 的镜像距离的整数。

其中,abs(x) 表示 x 的绝对值。

 

示例 1:

输入: n = 25

输出: 27

解释:

  • reverse(25) = 52
  • 因此,答案为 abs(25 - 52) = 27

示例 2:

输入: n = 10

输出: 9

解释:

  • reverse(10) = 01,即 1。
  • 因此,答案为 abs(10 - 1) = 9

示例 3:

输入: n = 7

输出: 0

解释:

  • reverse(7) = 7
  • 因此,答案为 abs(7 - 7) = 0

 

提示:

  • 1 <= n <= 109

解题方法:数学

如何获得一个整数的reverse? 这样就好:

1
2
3
4
5
6
7
8
inline int reverse(int n) {
int ans = 0;
while (n) {
ans = ans * 10 + n % 10;
n /= 10;
}
return ans;
}
  • 时间复杂度$O(\log n)$
  • 空间复杂度$O(1)$

AC代码

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/*
* @LastEditTime: 2026-04-18 18:53:10
*/
class Solution {
private:
inline int reverse(int n) {
int ans = 0;
while (n) {
ans = ans * 10 + n % 10;
n /= 10;
}
return ans;
}
public:
int mirrorDistance(int n) {
return abs(n - reverse(n));
}
};

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

千篇源码题解已开源


3783.整数的镜像距离:数学
https://blog.letmefly.xyz/2026/04/18/LeetCode 3783.整数的镜像距离/
作者
发布于
2026年4月18日
许可协议