PAT乙级-1013 数素数
解题代码:
import math def is_prime(n): if n < 2: return False if n == 2 or n == 3: return True if n % 2 == 0 or n % 3 == 0: return False for i in range(3,int(math.sqrt(n)+1),2): if n % i == 0: return False return True P = [] MN = list(map(int,input().rstrip().split())) for i in range(1,104730): if is_prime(i): P.append(i) for i in range(MN[0]-1,MN[1]): if (i - MN[0] + 2)%10 == 0 and i != MN[1]-1: print(P[i],end = '') print() elif i == MN[1]-1: print(P[i],end = '') elif (i - MN[0] + 2)%10 != 0 and i != MN[1]-1: print(P[i],end = ' ') exit(0)