求助,用python做超时怎么办

P5723 【深基4.例13】质数口袋

l=int(input()) n=0 s=0 for i in range(2,l): c=0 for j in range(2,i): if i%j==0: c+=1 if c==0: s+=i if s<=l: print(i) n+=1 print(n)
by sscyy @ 2024-03-04 22:55:07


@[sscyy](/user/1093480) 不是 python 的问题,建议去学习质数筛,这道题朴素判断方法是不行的
by Ice_lift @ 2024-03-04 23:06:26


@[sscyy](/user/1093480) 判断质数复杂度不正确 @[Ice_lift](/user/857626) 不需要质数筛,根号判断是能过的
by PorkSausage @ 2024-03-04 23:10:05


@[sscyy](/user/1093480) 每一次只需要枚举到 $\sqrt{x}$ 就可以了。
by WydnksqhbD @ 2024-03-05 09:32:31


@[PorkSausage](/user/974277) 好吧,我做的时候是筛法做的
by Ice_lift @ 2024-03-05 13:47:33


@[PorkSausage](/user/974277) 好的,谢谢啦
by sscyy @ 2024-03-07 22:41:43


|