問題簡述:哥德**猜想說,大於2的偶數可以分解成兩個素數之和。該問題求分解個數。
問題分析:解決本問題,首先用eratosthenes篩選法求得必要的素數,然後用試探法求可分解的個數。
程式說明:
對於輸入的偶數sum而言,如果能夠分解成兩個素數之和,其中乙個必然小於或等於sum/2,基於這個原理進行分解計數,最後求出所有的組合。
先對p各項賦值,p==1代表是素數
#include
#include
// eratosthenes篩選法
void
sieveofe
(int p,
int n)
int max =
sqrt
(n);
for(i=
3; i<=max; i++)}
}//p==1代表是素數
#define max 10000
intmain
(void
)printf
("%d\n"
, count);}
return0;
}
分拆素數和
分拆素數和 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input 輸入包含一些正的偶數,其值不會超過10000,個數不...
分拆素數和
把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input輸入包含一些正的偶數,其值不會超過10000,個數不會超過500,若遇0,則結束。output對應每個偶數,輸出其拆成不同素數的個數,每個結果佔一行。sample input30 260sample output3 2 這個題的思路比較簡單,你...
分拆素數和。
description 把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input 每行包含乙個正的偶數,其值不會超過10000,個數不會超過500。output 對應每個偶數,輸出其拆成不同素數和的組數,每個結果佔一行。sample input 30 26 sample output3 2 寫乙個判...