列表

详情


NC253354. qsgg and Primes

描述

可右截断素数 指的是每一次去掉最后面的一位数,都是素数。

例如,7393是右截断素数,因为 7393, 739, 73 和 7 都是素数。

给你一个数,判断是否是可右截断素数。

输入描述

输入共 T+1 行。

第一行一个整数 T(1≤T≤10^4)

接下来 T 行,每行一个整数表示 A\ (1≤A≤10^6)


输出描述

输出共 T 行,"YES" 或 "NO" ,表示 A 是否是可右截断素数。

示例1

输入:

3
7393
17
233333

输出:

YES
NO
NO

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Python3 解法, 执行用时: 356ms, 内存消耗: 4660K, 提交时间: 2023-08-12 09:34:59

T = int(input())

def isPrime(x):
    if x == 1: return False
    if x == 2 or x == 3:
        return True
    if (x % 6 != 1) and (x % 6 != 5):
        return False
    for i in range(5, int(x ** 0.5) + 1, 6):
        if (x % i == 0) or (x % (i + 2) == 0):
            return False
    return True
    

for i in range(T):
    n = input()
    print('YES' if all(isPrime(int(n[0:i+1])) for i in range(len(n))) else 'NO')

上一题