此題用最樸素的判斷素數法,超時沒商量,必須超。本菜無奈,在網上發現了篩法求素數,借鑑了一下,現貼出**留念
#include#include#define n 1000000
using namespace std;
bool* isprimes = new bool[1000001];
void filterprime()
}int main(){
int a,b,i,sum;
filterprime();
while(cin>>a>>b){
sum=0;
for(i=a;i<=b;i++)
if(isprimes[i])
sum++;
cout《埃拉託斯特尼篩法。
篩法部分的****:
質數和分解 prime
問題描述 任何大於1的自然數n,都可以寫成若干個大於等於2且小於等於n的質數之和表示式 包 括只有乙個數構成的和表示式的情況 並且可能有不止一種質數和的形式。例如9的質數和 表示式就有四種本質不同的形式 9 2 5 2 2 3 2 2 3 3 3 2 7。這裡所謂兩個本質相同的表示式是指可以通過交換...
Prime演算法和Kruskal演算法
利姆 prime 演算法 只與頂點相關 演算法描述 普利姆演算法求最小生成樹時候,和邊數無關,只和定點的數量相關,所以適合求稠密網的最小生成樹,時間複雜度為o n n 演算法過程 1.將乙個圖的頂點分為兩部分,一部分是最小生成樹中的結點 a集合 另一部分是未處理的結點 b集合 2.首先選擇乙個結點,...
EOJ 3452 唐納德先生和假骰子
題目描述 在進行某些桌遊,例如 uno 或者麻將的時候,常常會需要隨機決定從誰開始。骰子是一種好方案。普通的骰子有六個面,分別是一點 二點 三點 四點 五點 六點,六面向上的概率相同。由於骰子只能產生六種情況,而實際桌遊時,卻常常有三到四人,所以,我們在擲骰子時,常常採用兩顆骰子,這個 隨機的選擇 ...