Predict the output 
n=1000
sieve = [True]*n
sieve[0]=sieve[1]=False
for i in range(n):
    if sieve[i]:
        for d in range(2*i, n, i):
            sieve[d]=False
candidates=[]
for x in range(100, 1000):
    if sieve[x] and x%100%3==0 and sum(map(int, str(x)))%5==0:
        candidates.append(x)
for x in candidates:
    s=str(x)
    if all(d in s for d in "127") or all(d in s for d in "389"):
        print(x)


Posted on by