import math
def snt(x):
i = 2
while i <= math.sqrt(x):
if x%i == 0:
return 0
i+=1
return 1
def dx(x):
reverse = 0
temp = x
while temp != 0:
rem = temp % 10
reverse = reverse*10 + rem
temp //= 10
if reverse == x:
return 0
else:
return 1
t = int(raw_input())
def tong(x,y):
dem = 0
i = x+1
if i%2 ==0:
i+=1
while i < y:
if snt(i)==1 and dx(i)==0:
dem+=1
i+=2
print dem
while t > 0:
a = raw_input().split()
for i in range(len(a)):
a[i] = int(a[i])
tong(a[0],a[1])
t-=1
Mình có đoạn code trên với yêu cầu là tìm xem trong khoảng từ x đến y (hai tham số truyền vào là a[0] và a[1]) có bao nhiêu số vừa là số nguyên tố, vừa là số đối xứng.
Mình làm đến đây có vẻ đúng nhưng có một vấn đề là code chạy quá chậm. Mong mọi người giúp mình tối ưu đoạn code này cho chạy nhanh hơn. Xin cảm ơn