演算法提高 質數的後代
時間限制:1.0s 記憶體限制:256.0mb
問題描述
在上一季裡,曾提到過質數的孤獨,其實從另乙個角度看,無情隔膜它們的合數全是質數的後代,因為合數可以由質數相乘結合而得。
如果乙個合數由兩個質數相乘而得,那麼我們就叫它是質數們的直接後代。現在,給你一系列自然數,判斷它們是否是質數的直接後代。
輸入格式
第一行乙個正整數t,表示需要判斷的自然數數量
接下來t行,每行乙個要判斷的自然數
輸出格式
共t行,依次對於輸入中給出的自然數,判斷是否為質數的直接後代,是則輸出yes,否則輸出no
樣例輸入43
4612樣例輸出
noyes
yesno
資料規模和約定
1<=t<=20
2<=要判斷的自然數<=10^5
#include #include #include using namespace std;
int main()
; scanf("%d", &t);
for (int i = 0; i < t; ++i)
scanf("%d", &numbers[i]);
bool is_not_prime[100005] = ;
vectorprimes();
for (int i = 4; i <= 100000; i += 2)
is_not_prime[i] = 1;
for (int i = 3; i <= 100000; i += 2)
}bool son_of_prime[100005] = ;
for (int i = 0; i < primes.size(); ++i)
}for (int i = 0; i < t; ++i)
return 0;
}
藍橋杯 試題 演算法提高 質數
第一種 資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給定乙個正整數n,請你輸出n以內 不包含n 的質數以及質數的個數。輸入格式 輸入一行,包含乙個正整數n。輸出格式 共兩行。第1行包含若干個素數,每兩個素數之間用乙個空格隔開,素數從小到大輸出。第2行包含乙個整數,表示n以內質...
演算法提高 質數的後代
問題描述 在上一季裡,曾提到過質數的孤獨,其實從另乙個角度看,無情隔膜它們的合數全是質數的後代,因為合數可以由質數相乘結合而得。如果乙個合數由兩個質數相乘而得,那麼我們就叫它是質數們的直接後代。現在,給你一系列自然數,判斷它們是否是質數的直接後代。輸入格式 第一行乙個正整數t,表示需要判斷的自然數數...
演算法提高 質數的後代
問題描述 在上一季裡,曾提到過質數的孤獨,其實從另乙個角度看,無情隔膜它們的合數全是質數的後代,因為合數可以由質數相乘結合而得。如果乙個合數由兩個質數相乘而得,那麼我們就叫它是質數們的直接後代。現在,給你一系列自然數,判斷它們是否是質數的直接後代。輸入格式 第一行乙個正整數t,表示需要判斷的自然數數...