class Solution {
public:
bool sumOfNumberAndReverse(int num) {
}
};
6219. 反转之后的数字和
给你一个 非负 整数 num
。如果存在某个 非负 整数 k
满足 k + reverse(k) = num
,则返回 true
;否则,返回 false
。
reverse(k)
表示 k
反转每个数位后得到的数字。
示例 1:
输入:num = 443 输出:true 解释:172 + 271 = 443 ,所以返回 true 。
示例 2:
输入:num = 63 输出:false 解释:63 不能表示为非负整数及其反转后数字之和,返回 false 。
示例 3:
输入:num = 181 输出:true 解释:140 + 041 = 181 ,所以返回 true 。注意,反转后的数字可能包含前导零。
提示:
0 <= num <= 105
原站题解
python3 解法, 执行用时: 3364 ms, 内存消耗: 14.8 MB, 提交时间: 2022-11-09 14:44:26
class Solution: def sumOfNumberAndReverse(self, num: int) -> bool: for i in range(num + 1): rev, x = 0, i while x: rev = rev * 10 + x % 10 x //= 10 if i + rev == num: return True return False
python3 解法, 执行用时: 2580 ms, 内存消耗: 14.9 MB, 提交时间: 2022-11-09 14:43:02
class Solution: def sumOfNumberAndReverse(self, num: int) -> bool: return any(i + int(str(i)[::-1]) == num for i in range(0, num + 1))