令 pi表示第 i 個素數。現任給兩個正整數 m≤n≤104 ,請輸出 pm到 pn的所有素數。
輸入格式:
輸入在一行中給出 m 和 n,其間以空格分隔。
輸出格式:
輸出從 pm到 pn的所有素數,每 10 個數字佔 1 行,其間以空格分隔,但行末不得有多餘空格。
輸入樣例:
5 27
輸出樣例:
11 13 17 19 23 29 31 37 41 43
47 53 59 61 67 71 73 79 83 89
97 101 103
首先使用了1007中的思想,發現有兩個判定超時。隨後使用用空間換時間的方法,原理非常簡單:乙個大範圍內所有數字標記為true,找到乙個素數將大範圍內此素數的所有倍數全標記為false,並將此素數加入佇列。依次選擇素數進行標記(標記為true的數即為素數)。
str1 = list(map(int , input().split()))
l =
num = 3
flag = [true]*(150005)
p=2while(p<=150000):
for i in range(2*p,150000,p):
flag[i] = false
while 1:
p += 1
if(flag[p]==true):
break
l = l[str1[0] - 1 :str1[1]]
for i in range(len(l)):
if (i+1)%10 == 0:
print(l[i])
elif i == str1[1]-str1[0]:
print(l[i], end='')
else:
print(l[i], end=' ')
PTA 1013 數素數 (20 分
這題很水。但是給了我乙個小提示。那就是,素數篩的界限,是1 maxn的範圍 人家題意是第n到第m個素數,maxn太小會出界,你並不知道第i個素數會不會大於maxn。貼一下ac 吧 include include include include include include include incl...
PTA 1013 數素數 20分 C語言
1013 數素數 20分 令 p i 表示第 i 個素數。現任給兩個正整數 m n 10 4 請輸出 p m 到 p n 的所有素數。輸入格式 輸入在一行中給出 m 和 n,其間以空格分隔。輸出格式 輸出從 p m 到 p n 的所有素數,每 10 個數字佔 1 行,其間以空格分隔,但行末不得有多餘...
1013數素數(素數)
時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 令pi表示第i個素數。現任給兩個正整數m n 104,請輸出pm到pn的所有素數。輸入格式 輸入在一行中給出m和n,其間以空格分隔。輸出格式 輸出從pm到pn的所有素數,...