bnu 素數三元組

2021-05-26 18:36:19 字數 1041 閱讀 8147

前四次的選拔賽積分請見這裡。

time limit: 1000 ms     case time limit: 1000 ms     memory limit: 65535 kb

submit: 755     accepted: 273

相鄰三個奇數都是素數是一種非常少見的情形,也就是三個奇數p-2, p, p+2都是素數,這樣就形成了乙個素數三元組。請找出三個數都不超過n的所有這樣的素數三元組。

輸入只有乙個正整數n,n <= 5000000。

輸出大小不超過n的所有的素數三元組,每行按照從小到大的順序輸出乙個三元組中的三個數,兩個數之間用空格間隔。如果不存在這樣的素數三元組,請輸出「no triple」。

1
no triple
liulibo
第一次用這種方法解素數的問題;這種方法可以處理的資料量 遠大於 最 普通的那種篩選法;決定以後做這個、樣的問題就用這個方法了。。
#include#include#includeusing namespace std;

#define max 5000000

bool a[max];

#define false 0

#define true 1

int main()

for(i=3;i<=sqrt(max);i+=2)

if(a[i])

for(j=i+i;j<=max;j+=i)

a[j]=false;

int n;

while(~scanf("%d",&n))

}if(!flag)printf("no triple\n");

}return 0;

}

只針對這道題 還有一種更簡單的解法如下:
#includeint main()

return 0;

}

是不是恍然大悟 我也是這樣的  從差點超時到只用8ms就ac 感覺不錯。

等差三元組

題目 和是2組不同的等差三元組,除了等差的性質之外,還有個奇妙的地方在於 5 2 3 2 1 2 7 2 5 2 3 2 n 15。同這對三元組也存在同樣的性質 19 2 15 2 11 2 7 2 5 2 3 2 n 15。這種成對的三元組還有很多。當n 15時,有3對,分別是和,和,和。現給出乙...

完美三元組

問題 定義完美三元組,a,b,d a是d的倍數,b是d的倍數,且a b d 1 輸入 t組測試資料,第一行乙個t 1 t 10000 之後t行每行兩個整數l,r,表示三元組中a 的取值區間 l,r 在此條件下,求滿足的完美三元組的總數 1 l r 100000 輸出 乙個整數。分析 首先,a的值已經...

遞增三元組

遞增三元組 描述給定三個整數陣列a a1,a2,an b b1,b2,bn c c1,c2,cn 請你統計有多少個三元組 i,j,k 滿足 1 i,j,k n ai bj ck 輸入第一行包含乙個整數n。第二行包含n個整數a1,a2,an。第三行包含n個整數b1,b2,bn。第四行包含n個整數c1,...