Назовем простое число суперпростым, если в его десятичной записи есть только цифры,...

0 голосов
53 просмотров

Назовем простое число суперпростым, если в его десятичной записи есть только цифры, являющиеся простыми числами, например, числа 2, 3, 5, 7, 23 — суперпростые, а 13 — нет. Известно, что сто первым простым числом является число 547. А какое число является сто первым суперпростым?
В качестве ответа укажите одно натуральное число


Информатика (12 баллов) | 53 просмотров
Дан 1 ответ
0 голосов

# Решение на Python 3.X

from itertools import count

def prime(num):
    if num <= 1:<br>        return False
    for div in range(2, num // 2 + 1):
        if num % div == 0:
            return False
    return True

def nth_superprime(n):
    if n < 1:
        return None
    else:
        c = 0
        for x in count(2):
            digits = [int(l) for l in str(x)]
            if all(map(prime, digits)):
                c += 1
                print(c, '=', x)
                if c == n:
                    return x

print(nth_superprime(101))

# Вывод (и ответ): 2322

(7.2k баллов)