- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有两个数字,A = 10 和 B =20。
现在我需要计算 (A,B) 范围内的回文数
我试过这个:
s = list(map(int,raw_input().split()))
a = s[0]
b = s[1]
l = range(s[0],s[1]+1)
# print "list : ",l
def isNumberPalindrome(n):
return str(n) == str(n)[::-1]
x = filter(isNumberPalindrome, l)
# print " All Palindorme numbers : ",x
count = len(x)
print count
如果 A 和 B 在 10^18 范围内,我有内存超出问题。
有人可以建议我如何解决这个问题。
提前致谢
最佳答案
使用生成器而不是调用 range()。
from __future__ import print_function
def isNumberPalindrome(n):
return str(n) == str(n)[::-1]
a = pow(10, 18)
b = pow(10, 19) + 1
def gen_range(start, end):
i = long(start)
while i < end:
yield i
i = i + 1
count = 0
for l in gen_range(a, b):
count += isNumberPalindrome(l)
print(count)
关于python - 需要更好的逻辑来查找范围内的回文数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40890236/
我正在编写 Java 代码,我必须在其中创建一个返回带有一个参数的 boolean 值的方法。如果提供给它的数字(参数)是否为回文,代码必须识别真假。这是我的代码,但结果始终是错误的。有人可以确定这里
我必须判断一个整数是否是JAVA中的回文数。我需要帮助理解为什么我编写的代码返回 Time Limit Exceeded? class Solution { public boolean is
这是工作代码: p = (10..14).map { |a| (a..14).map { |b| a * b } flatten.select { |p| p.to_s == p.
可计算任意位水仙花数 复制代码代码如下: public static void main(String[] args) { int max
题目:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数 是指正序(
1.题目描述: 难度:简单 描述: 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 例如,1
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 已关闭 7 年前。 Improve
谁能帮我这个c程序。我正在尝试执行这个回文检查代码,但在我输入数字后它没有被执行。有什么错误吗? #include int main() { int num,rev=0,r,temp;
本文关键词:回文数,回文,题解,Leetcode, 力扣,Python, C++, Java 题目地址:https://leetcode.com/problems/palindrome-number
9. 回文数 题目描述 解题思路 首先将整数x转换为字符串型x_str; 遍历x_str.length()/2次,比较第 i 位与倒数第 i 位字符是否相同,如果不同返回false; 遍历结束,返回t
我是一名优秀的程序员,十分优秀!