problem description
在連續自然數[l,r]中找出任意三個連續的素數a、b、c,如果a+b+c的和也為乙個素數,那麼我們就稱這樣的三個素數a、b、c為一組友好素數對。
注意:例如5,7,11就是三個連續的素數(即兩個素數之間沒有其他素數間隔,就可以說這兩個素數連續),並且它們的和為23,也是乙個素數。
input
第一行輸入乙個整數t,表示資料組數(1< t<10000);
第二行輸入兩個資料l,r(1<=l、r<=10^6);
output
每組資料輸出友好素數對的總組數。
sample input
2 5 11
1 100
sample output
1 15
考查思維和**實現了,需要一定的acm基礎。在校賽的時候,為了卡時間,需要很多資料,為此我也破費周折。
#include
#include
#include
using
namespace
std;
#define m 1000005
long
long d[1000010],s[1000010],cnt=0;
int is_prime(int x)
void init()
int find(int x)
return l;
}int main()
for(int i=0;i<100;i++)
cout
<": "
<" ";
cout
scanf("%d",&t);
while(t--)
if(is_prime(l)==0)
p++;
q--;
int ans=s[q]-s[p];
printf("%d\n",ans);
}return
0;}
美素數 素數打表
description 小明對數的研究比較熱愛,一談到數,腦子裡就湧現出好多數的問題,今天,小明想考考你對素數的認識。問題是這樣的 乙個十進位制數,如果是素數,而且它的各位數字和也是素數,則稱之為 美素數 如29,本身是素數,而且2 9 11也是素數,所以它是美素數。給定乙個區間,你能計算出這個區間...
python打反素數 反素數求解 反素數打表
問題描述 對於任何正整數x,起約數的個數記做g x 例如g 1 1,g 6 4.如果某個正整數x滿足 對於任意i 0 現在給乙個n,求出不超過n的最大的反素數.比如 輸入1000 輸出 840 思維過程 求 1.n 中約數在大的反素數 求約數最多的數 如果求約數的個數 756 2 2 3 3 7 1...
高效素數打表
大家所知的素數打表時間複雜度幾乎都是n2。就是這種 void init prime j 0 for i 2 i 1000002 i if prime i prime j i 在網上搜到了另一種方法,效率提高了不少。巧妙之處還在研究中,等理解差不多就仔細分析一下。下面是 大家可以發表一下自己的看法,交...