萌新今晚刚开始入坑 py,TLE求助
查看原帖
萌新今晚刚开始入坑 py,TLE求助
327813
__lyh__楼主2022/2/9 21:49

不知是代码逻辑写挂了还是因为不懂 py 写挂了。。。

N = 10000005
ans = [0 for i in range(N+10)]
vis = [0 for i in range(N+10)]

def sevenn(u):
    v = u
    while v>0:
        num = v%10
        if num == 7:
            return 1
        else:
            v = v // 10
    return 0

def work():
    n = int(input())
    if vis[n]:
        print(-1)
    else:
        print(ans[n])

def init():
    i = 1
    while i <= 10000000:
        if(sevenn(i)):
            vis[i] = 1
            j = i
            while j <= 10000000:
                vis[j] = 1
                j += i
        i += 1
    now = 10000001
    i = 10000000
    while i:
        ans[i] = now
        if(vis[i]):
            now = i
        i -= 1

init()
t = int(input())
for i in range (t):
    work()
2022/2/9 21:49
加载中...